主題:年終總結上的經驗體會(脫水版)
說明,原文是內部述職會演講PPT,為了避免涉及公司產品,【】括號的內容可以一眼飄過,脫水之后的內容應該和純Java技術掛鉤,歡迎褒貶不一的評論。
1.重構,伴隨著整個軟件開發過程,大到軟件需求評審會上的需求變更,小到一時靈感對變量的命名,重構不挑食,重構無處不在。
【舉了兩個工作中實際遇到的例子來說明】
如果發現想要使用某個方法,但它位于其它類中,就可以想是否可以提取父類或者接口,然后把通用的方法提取到其中,再對其進行繼承或者實現,那樣就可以方便地調用方法了
……
甚至,發現某個變量、方法和類的名字不合理,為了取一個更好的名字,冥思苦想,最后連自己都被糾結了進去,這個過程也算重構。
2.從現在起,開始考慮代碼質量。
代碼質量提高的目標:優雅、清晰、維護性強、沒有壞的味道,如果讓人第一眼看到就有種拍案叫絕的沖動,那么就再好不過了。
提高代碼質量的方式有很多種,利用工具、經常看一些大師級的代碼、團隊codereview、重構、深入OO思想以及掌握常用的設計模式等等,都是很不錯的方法。
【舉了一個工作中實際遇到的例子來說明】
3.時時刻刻考慮程序的健壯性和異常,即使過單行道的時候都會向道路兩邊看看再過去。
在此,我們不爭論java中的checked異常是否真的有必要,不爭論“用戶名不存在”這一事件是異常還是正常的use case,也不爭論發生了checked異常是業務邏輯的責任還是發生了unchecked異常是程序員的責任,我們討論通過異常來提高程序的健壯性。
【舉了一個工作中實際遇到的例子來說明】
4.代碼就像你的左腳,測試就像你的右腳。
你可以先邁左腳,再邁右腳。然后一直走下去。
也可以先邁右腳,再邁左腳。然后一直走下去。
只要你不是一直單腳跳著前進,你都會走得很穩,而且沒有人看得出區別來。
上面這句經典的話當然不是我的原創,但是我知道,測試很重要,非常的重要!
【舉了一個工作中實際遇到的例子來說明】
5.雖然軟件開發是一個團隊活,但是獨立開發一些比較有價值的小工具,感覺也不錯。
【利用我工作中開發的一款小工具來說明】
6.學習需要堅持,特別是看別人的代碼。
當你拿到一個10萬行的源代碼時,前10天肯定很痛苦的,要是你能找到切入點一步步跟著源代碼的運行流程看下來熬過前10天基本上就能豁然開朗了。