过年(2015)读书笔记
2015年春節,住在家里新蓋的房子里,因為種種原因還沒通電,更別說網絡了,所以我沒事的時候就看看《馴服爛代碼》(過年回家只為和家人呆一起,所以也很少出去...)。在懵懵懂懂中就看完了,雖然不能說有什么大徹大悟的,但看書總歸是好的,所以呢,就做個筆記吧。也以此謹記2015年春節:平淡而真實。
《馴服爛代碼》:首先以一個例子開題---作為一個時鐘管理員,我想通過設置特定手機上的時間,實現同步更新酒店里顯示的不同地區(時區)的時間。拋出爛代碼問題(程序bug,代碼“腐臭”),再問題進行處理后又拋出一個大問題----"測試先行還是測試后行",當然它也是點了一下TDD(測試驅動開放的優點)。隨后說明了何為爛代碼,如何處理爛代碼(有些簡單可以直接修正,有些則是用“TODO”加以指明,待后續優化),根據用戶意圖編寫測試用例,固化軟件行為的同時按部就班的處理“TODO”。通過分而治之的思想將爛代碼重構(重寫代碼或者根據原有代碼加以重構)。通過分而測之的思想(接口提取或者子類化方法覆寫)使得程序更加符合面向對象設計五大原則(SOLDI)。最后提到了單元測試、個人習慣的養成(理論哲學吧)以及一些環境的搭建。當然書中也列舉了不少例子循序漸進引入正題的,還有每個章節最后的歸納總結也是十分的經典。
書中給我印象深刻的是:
一、整理并編號需求列表---繪制出用例類圖----用例圖。
二、用一句話描述用戶正題需求:“作為<角色>,我想通過<條件>,實現<目的>”。這個還是比較經典的。
三、通過“TODO”占位的方式描述代碼實現意圖
四、分而治之的思想,對代碼進行重構,通過設計的原則實現接口的提取、隔離,功能的劃分、歸納到具體的類。(核心)
五、TDD思想,測試驅動開發,很少接觸過,因為我涉及到的開發都是測試后行的。沒有說以最小的測試實現進行深入的。不過這個貌似還是蠻好玩的。
六、接口的提取、第三方類庫的封裝的意義。
七、細節。書中提到代碼管理工具提交前Commit Message的編寫,一些快捷方式的使用這些細節的東西,是值得學習的。
《馴服爛代碼》是一本不錯的書,我并未能夠理解其中的奧妙,只是略知皮毛而已,例如對其核心部分只用了一句話(第四點)點名,顯然是不夠的。如若有理解不對的地方,還請高手指明。
Thanks!2015-02-24
?
轉載于:https://www.cnblogs.com/Joy-et/p/4298686.html
總結
以上是生活随笔為你收集整理的过年(2015)读书笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STL set容器的一点总结
- 下一篇: NOIP2001-普及组复赛-第一题-数