作為一個苦逼的程序員,因為種種原因經常需要閱讀別人寫的代碼。您是否有因代碼雜亂冗余而心生厭惡,您是否有過因代碼晦澀難懂而抓狂,您是因代碼低級的邏輯錯誤而憤概,您是否因代碼結構不合常規而需要到處查找,您是否因看到幾百甚至上千行代碼的方法而望洋興嘆,您是否因代碼缺少注釋而猜測以及花很多時間去理清楚前后邏輯。苦逼的我全部遇到過并且很多很多,這些代碼的作者從世界500強頂級IT公司到幾十人的小公司同事,從印度美國新加坡人到中國人,從七八年的老人到剛入行的菜鳥。相信您也遇到過。這些人有一些共性,應付任務,個性十足以及不思進取!如果您是程序員菜鳥,那么您一定遇到很多并且既是肇事者又是受害者,這是必經之路;如果你是業界大牛,不用說您眼里別人的代碼都或多或少都有問題,遇到的情況更多!

都說代碼是程序員的第二張臉,寫了太爛的代碼背后一定會遭人鄙視。請遵循一些簡單的規范,寫干凈一致的代碼!請把您的個性用在寫出最簡單易懂的代碼上面,而不是晦澀冗余無用的代碼,甚至自我簽名!您的才華應該表現在設計良好的結構和模式,表現在干凈易懂的代碼,表現在對空間的尊重,對代碼的尊重。這樣您才能贏得別人的尊重!請記住代碼不是一次性的,需要重復的修改和重構,為未來寫點代碼!以下我總結幾點Java里面最基本的小規范:

1.  寫干凈整潔的代碼,請尊重空間,請尊重人眼的偏好

1.1  去除沒有用到的類引用,eclipse里面Ctrl+Shilft+O。看到一大片的因為類引用沒有用到而報的警告信息簡直就是災難,空間和視 覺沒有得到尊重。

1.2  記得格式化代碼,eclipse里面Ctrl+Shilft+F。看到一大片雜論無章,連基本的對齊都沒有的代碼也是很大的災難,視覺腦力都會 受到挑戰。

1.3  不要吝惜廢棄的老代碼,eclipse里面Ctrl+D。有些人對待已經廢棄的老代碼比對待自己的老婆還寶貝,大量運用注釋來保留,隨 著代碼的演變暫用非常大量的空間。如果那段代碼非常精妙,舍不得刪,那么請把它移到您的私人代碼庫。

1.4  請不要寫冗余無用的代碼。if(true)之類的代碼塊完全不應該出現,用空行隔開該段代碼是更好的選擇。

1.5  請合理運用空行。空行可以用來隔開相對獨立的代碼塊,有利于閱讀和理解。但是不要使用超過一行的空行,對空間,別太奢   侈了。

1.6  請不要在兩個地方出現完全相同的代碼,您總是可以想辦法重用的,不是嗎?

1.7 命名類,方法,變量慎用簡寫,全稱我都不一定看得懂,簡稱您太高估我的智商了!請問qrbs代表什么,可能火星人知道吧!

1.8 把所有的類變量放到最前面,如果比較多請按用途分組排列,不要把變量散落在大江南北,我找的真的很辛苦!

1.9  拆分大的類,大的方法,如果您的類有一萬行,如果您的方法有一千行,我真的會恐懼,是恐懼!

2.  高效運用注釋

2.1  規范的注釋類信息。請查看一下Java標準庫的String.java源碼吧,包括文件名,日期,作者,版本號等信息,用統一的模板。千  萬別把您的大名散落于方法簽名甚至于具體代碼里面了。我在讀業務邏輯的時候沒有興趣思考您的人生!要找您我可以在類簽名里面找到的,放心啊!

2.2  非Java Bean的public方法都需要注釋,您總不會要別人讀您的代碼才能調用您的代碼吧!即便您的英文非常好,命名也非常規   范,您總不能期待別人都英文好,理解都一樣吧。

2.3  為不容易理解類變量注釋。類變量特別是私有的類變量沒有人要求注釋,但是為了能夠快速的了解您表示的是什么,還是寫點   什么吧!您知道我英文不算好!

2.4  注釋代碼段,注釋邏輯選擇。上面提到運用空行分割開邏輯相對獨立的代碼,那么請在空行的下一行也寫點下面代碼段要干什   么的語句吧。 如果有if else等邏輯選擇的時候,麻煩也花幾秒鐘寫上判斷的依據和結果好嗎?邏輯難懂且關鍵,您懂的!

3. 不斷學習,不斷思考,不斷實踐,更上一層樓

3.1 遇到不懂的,請先google,一定要學會,不然就一直不會了,回頭發現工作六七年沒有工作兩年的小朋友懂的多!

3.2 看別人代碼時要汲取好的方法和技巧。

3.3 接觸一項技術要升入了解和實踐,請問您做過的系統您現在都可以從零開始搭建起來了嗎,我的意思是架構搭建哦!

3.4 書里面有知識,有思想,有時間的話還是多精讀基本經典書籍吧。您會受益匪淺!


以上只是一點個人的想法,您可以接受或者反駁。謝謝您的時間,就這樣!