前段時間曾經寫過一篇文章,《優秀程序員無他-善假於物也》。其中談到一點是優秀的程序員必須要能靈活的掌握常用軟件的快捷鍵。對於程序員來說,每天使用時間最長的軟件恐怕就是IDE(Integrated Development Environment)了。如果你是C#的程序員,那么就基本非Visual Studio莫屬了。而如果你是Java的程序員,那么eclipse,myeclipse或者Intellij都有人用之。如果你是Ruby等動態語言的程序員,那么Vim、Emacs、RubyMIne…有太多的選擇可以成為你的IDE。
下面我就用Intellij來給大家演示下使用快捷鍵是多么的強大,能提高多大的效率。(以下所使用的快捷鍵在eclipse中基本都有對應的快捷鍵。)
大家先看一個簡單的類。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
這是一個很普通的Value Object。創建這個類並寫完這些代碼需要多長時間那?不同人會給出不同的答案。使用快捷鍵與不使用快捷鍵有天壤之別。
不使用快捷鍵,你需要手寫全部的代碼。而使用快捷鍵,最多你只需要敲半行代碼。這半行代碼就是構造函數里的那兩個參數String name, String className
。
下面我就一步步的演示如何使用Intellij的快捷鍵來創建這個Value Object。
使用
Ctrl+1
切換到project列表項,使用使用上下箭頭鍵選擇放置這個Value Object的package。使用
Alt+Insert
鍵調出創建對話框,選擇new class並回車。在彈出的
Create New Class
對話框中鍵入類名,並回車。最后生成如下的代碼。
1 2 |
|
- 按esc鍵將光標移動到editor中,按下
alt+Insert
鍵調出Generate
對話框,選擇Constructor
項並回車。這樣會生成一個無參數的構造函數。
這是生成的代碼。
1 2 3 4 |
|
- 光標移動到構造函數名后的小括號內,敲入這樣的代碼
String name, String className
。
此時代碼如下。
1 2 3 4 |
|
- 光標保持在構造函數的參數列表中,使用
alt+Enter
快捷鍵,選擇Create Fields For Constructor Parameters
條目,然后回車。
在彈出的對快框中使用shift+下箭頭
選中這兩個field並回車。
生成的代碼如下。
1 2 3 4 5 6 7 8 9 |
|
- 刪除
name
和className
的final
修飾符。最快捷的方法是光標移動到final
處,按Ctrl+W
鍵選中整個字符,然后按Delete
鍵。
此時代碼如下。
1 2 3 4 5 6 7 8 9 |
|
- 光標移動到任意一個field處,使用
alt+Insert
彈出Generate對話框,選擇Getter and Setter
條目按回車。
在彈出的Select Fields to Generate Getters and Setters
對話框中,使用shift+下箭頭
選中兩個field,按回車。
最終代碼生成。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
整個過程中不需要動一下鼠標,這意味着你的雙手根本不需要離開鍵盤。使用快捷鍵比不使用快捷鍵效率至少提高5倍,而且還不會出錯。最重要的一點是它能讓我們的大腦從這些繁瑣的體力勞動中解脫出來,從而集中到更需要發揮腦力勞動的地方。
其實靈活使用IDE的快捷鍵是一門大學問,我在和同事pair的過程中經常能從他們身上學到一些使用IDE的快捷鍵的妙處。以后有時間會專門整理出來share給大家。