雖然這篇vim指令刪除鄉民發文沒有被收入到精華區:在vim指令刪除這個話題中,我們另外找到其它相關的精選爆讚文章
在 vim指令刪除產品中有2篇Facebook貼文,粉絲數超過1萬的網紅91 敏捷開發之路,也在其Facebook貼文中提到, 突然發現學員的心得文,感到欣慰。 一月份的極速開發報名已經額滿,五月的報名連結在這:https://yihuode.io/activities/724 #vim #php #java #c# #極速開發 Hi 大家好, 之前在Backend版徵到人團報極速開發課程(php/java/c...
vim指令刪除 在 91 敏捷開發之路 Facebook 的最佳解答
突然發現學員的心得文,感到欣慰。
一月份的極速開發報名已經額滿,五月的報名連結在這:https://yihuode.io/activities/724
#vim #php #java #c# #極速開發
Hi 大家好,
之前在Backend版徵到人團報極速開發課程(php/java/c#), 回饋一下寫心得供後面有興趣的板友參考。
我很喜歡老師課堂上的一句話,”你不知道你不知道什麼”,例如你以為你打字很快了,但透過結合IDE跟快捷鍵又可以在上一層,以為精通IDE是極限了,vim+IDE又可以再突破極限。
[這門課不是教你vim指令,而是教你怎麼用vim來開發]
上課之前我認知這個課程會注重在vim操作, 而實際上不只是vim的本身,更進一步的利用如何與IDE做整合,並練習如何利用vim來取代重複的動作,同時教導怎麼針對個人的習慣去客製化vim的操作,更重要的是透過課後練習的review快速將所學轉化到工作上。
[藉由Kata練習將vim和IDE連結在實務上]
可能看了一些教學影片跟書,知道怎麼操作vim但無法流暢的應用在實際開發上。以我自己的親身經驗,練習一段時間且有試著在專案上使用,有感受到vim的便利度跟潛力,但是實際拿來開發上卻差了些什麼,總是有一道牆擋著的感覺,藉由這門課跟課後的練習打通了實際使用上的一些檻,有種武俠小說任督二脈被打通的感覺,終於稍微體會到高手如何應用vim行雲流水般coding
[課後練習與online coaching大量減少學習時間]
老師安排的課後練習跟online coaching,讓學習vim並應用到工作上的時間跟學習曲線可以大幅縮短,班上有同學認真練習在一周內從完全不會vim到可以應用到實際工作上,對公認陡峭的vim學習曲線來說真的很驚人。
[讓你從每個操作的細節中扎實的省下時間]
那成效如何呢? 以我自己練習來說,同一個練習的kata用vim + IDE跟只用IDE起來大概可以快1/4 ~1/2的時間,這是”純操作”上省下的時間,相當的顯著,實務上開發花最多時間的是思考跟debug,其實很難掌控,但是藉由優化每個動作省下一點一滴時間卻是扎扎實實的。ps:附上gif,來看一下一個簡單的移動加刪除操作可以在三種操作下可以差多少個按鍵。
[跨IDE的操作習慣]
我開始練習是使用C# + Visual studio, 現在會有用WebStorm來練習javascript/typescript,操作上幾乎沒有差異,幾乎不需要重新練習跟記憶IDE的熱鍵, 如果同樣是JetBrains系列的IDE那大概可以完全維持一樣的操作習慣,相當推薦給有再用JetBrains IDE 多語言開發的朋友,當然VScodeVim也可以受益,只怕vim整合IDE的部分太過吸引人乾脆跳槽去JetBrains
ps: 單元測試還沒上過或是預算有限的板友可以先參考單元測試班(php/Java/C#),下一梯極速開發不知道會間隔多久了,有單元測試經驗在上極速開發課程會有加乘效果,加上這年頭寫測試已經是幾乎是必備技能了,我個人優先的會把單元測試班排在最前面。
極速開發課程支援php/java/c#,不過同梯也有寫c++的同學,寫ES6跟Typescript的版友也可以參考,操作上差異不大,一點課後心得供大家參考。
課程參考連結: https://dotblogs.com.tw/hatelove
vim指令刪除 在 紀老師程式教學網 Facebook 的最佳解答
[免費教學資源] 25 種免費 vi / vim 教學文章、影片!
(附上紀老師親自錄製的示範教學影片)
說起 vi 或 vim,寫程式的人要不是愛得要死,就是恨得要死!很少有中間的。它是一個非~~常古老(大約四十幾年)的文字編輯軟體,幾乎所有 Linux 都會內建。恨得要死的人,常抱怨「不能用滑鼠、老是要背一大堆指令」。愛得要死的人,一定是已經跨越背一堆指令的門檻,享受著「眼睛到哪裡,vi / vim 的游標就能跟到哪裡」的快感!
我是哪一派?我當然是愛得要死那一派(得意貌 XD)... 再怎麼說,我都是從 1980 年開始學電腦的。當年的 vi,與那時候其它文字編輯軟體比較起來,可是好用一百萬倍!我就在這麼糊里糊塗的情況,跨越了背誦一堆指令的門檻,登上「愛死 vi」的那群人。
無法被我說服的麻煩聽聽看底下這番比喻:你直覺認為愛開手排車的人技術好?還是愛開自排車的人技術好?如果是手排車,那再請問是手排車好學?還是自排車好學?vi 就類似手排車!很不好學!但學會的,大概都會去試試看怎麼用「水溝蓋跑法」去過個「髮夾彎」...(笑)。
還不能被說服?好吧!再舉個例子...。假設你要把下列這道 C 語言指令:
printf("Hello! World!\n");
裡面從 " 到 " 之間的文字刪除,變成這樣:
printf("");
然後加入新的句子,變成這樣:
printf("This is a new sentence.\n");
你會怎麼做?
你大概會:
1. 右手離開鍵盤去握滑鼠,說不定還搖個兩下,確定鼠標在哪(1 ~ 2 秒)
2. 小心翼翼地用鼠標把 Hello! World!\n 全數選起來(1 ~ 2 秒)
3. 按下 Delete 或倒退鍵(1 秒)
4. 輸入 This is a new sentence.\n (好啦!算你 2 秒)
你知道會 vi 的人怎麼做?
1. 直接打入最少量、可以唯一定位 Hello! World! 這串文字的搜尋字串,如「/o!」(Hello! 後兩字,或其它任意搜尋關鍵字),游標就會跳到字母 o 的下方(/ 是 vi 中「啟動搜尋」的前導字元)。(1 秒)
2. 打入「ci"」,會把 " 到 " 之間的字吃掉,還會把游標停好,讓你接下來打的字直接插入 " 與 " 之間(其中 c 代表 Change,會把選中的文字消除。i 代表 inside,與後方 " 連用,就是找到目前游標所在地,左右成對的 " ,並把它們選起來)。(1 秒)
3. 直接打入新文字「This is a new sentence.\n」即可(2 秒)。
所以 vi 熟的人,就會像打昇龍拳秘技,一口氣輸入「/o!ci"」,你眼睛還來不及跟,舊字串就已經被刪除了。缺點就是,你要背類似像這些鬼畫符的東西一堆。不過它們並非沒有規則,所以雖然比用滑鼠難上手,但一般人用 vi 天天打程式,兩個禮拜也就習慣了。
上面的「ci"」若改成「ci)」,會去找「目前游標所在地左右,與 ) 配對的括號,並把 ( 與 ) 之間的字刪除。所以,vi 練得熟的人,你會看到游標狂跑,你還搞不清楚發生什麼事之前,事情已經做完了。大家可以看看我示範的影片,就能感覺我想表達的意思。
好了!底下就是那 25 種免費的 vi 教學資源,希望大家喜歡喔!
https://code.tutsplus.com/articles/25-vim-tutorials-screencasts-and-resources--net-14631