小白
我是從16年7月份開始實習,正式參與工作。因為在我16年1月開始學習Java程式設計時,就被Java語言深深吸引,喜歡它嚴謹的文法格式。每當自己需要實作一個功能,先思考實作步驟,做到胸有成竹。然後通過代碼一步一步實作,自己都能夠獲得成就感,感覺自己特别适合做這一行。是以,從一開始,我就特别注重代碼規範,力求編寫出高品質的代碼。
在開始學習到實習這一段時間内,依稀接觸到了一些編碼規範。比如,類名使用首字母大寫駝峰格式,方法名使用首字母小寫駝峰格式等等。這些隻能是很基礎、很少的一部分。在實習中,自己也注意到,編碼規範的重要性。在一個團隊中,如果隻以實作需求或功能為目标編寫代碼,那寫出來的代碼簡直不忍直視,可讀性、可維護性太差,且基本上不具備可重用。當時,自己也在想,有沒有比較完整的、具有權威性編碼規範。
初識
2016年12月,阿裡巴巴釋出了《阿裡巴巴Java開發手冊》。這對于我來說,就像一盞明燈,照亮我前進的道路。我迫不及待的下載下傳下來,馬上仔細閱讀。當我讀完一遍後,感覺太棒了,簡直猶如神器一樣。此後,我便想,在編碼時,完全嚴格要求自己,編寫的代碼必須符合《Java開發手冊》。
想法是好的,但現實是殘酷的。由于當時水準有限,有很多規約看都看不懂,更别說去遵守了。比如并發處理相關規約,部分集合處理規約等。是以,自己隻能去遵守自己能讀懂的一些規約。當時,為了使自己能夠完全掌握《Java開發手冊》相關規約,自己編寫了一個Excel表格,分别記錄每一條規約自己掌握的程度。比如命名相關規約自己完全掌握,并發處理相關規約基本上都是讀不懂。
成長
随着自己工作年限的增長,以及業餘時間積極主動的學習,自己每隔一段時間,便讀一遍《Java開發手冊》,發現自己能夠讀懂的規約越來越多,這使我非常高興,自己寫的代碼也越來越優雅。同時,自己也開始積極嘗試向同僚、上司推廣《Java開發手冊》。每當自己完全掌握某條規約,并用于實際工作或學習中,自己都能獲得成就感。
P3C插件的釋出,使得規約檢查更加便捷。自己也是第一時間安裝使用,大大提高了代碼檢查的效率。自己在每次送出代碼前,都要執行規約掃描,如果不符合規約的地方,則修改後再送出,確定每一次送出的代碼都是符合《Java開發手冊》規約。随着不斷的代碼檢查、修改不符合規約的代碼,到現在,自己編寫出的代碼基本上能夠一次通過P3C的掃描,《Java開發手冊》的相關規約已經深入代碼骨髓。
從1.0到1.2到1.3、1.4、1.5華山版,以及最新1.6泰山版,每當《Java開發手冊》釋出新版本時,我都第一時間下載下傳并仔細閱讀。每次我都能夠從最新版本中,學習到新的編碼規約或思想理念。使我能夠不斷成長。
未來
展望未來,《Java開發手冊》還會不斷向前疊代,我也會繼續保持關注,持續學習新的規約并落地到工作學習中。我非常高興能夠遇到同樣一群人,他們都追求編寫出高品質、可讀性高、可維護性高的代碼。感謝《Java開發手冊》!