第1章 整潔代碼編程
第2章 有意義的命名數據結構
要點:名副其實,避免誤導,作有意義的區分,使用可搜索的名稱編程語言
理解:對我來講,命名變得愈來愈重要。良好的命名可讓程序作自我介紹通常,無需過多的註釋,就把握程序脈絡。好的命名,也可讓寫程序的邏輯變得更清晰。函數
第3章 函數指針
要點:函數要短小,每一個函數只作一件事,每一個函數一個抽象層級,儘可能減小函數參數,分隔指令和詢問,使用異常替代返回錯誤碼調試
理解:函數是全部編程語言中的基礎,良好的函數編寫不只增長了可讀性,對項目擴展也有幫助。在項目中,時常會碰到那種龐然大物的「大函數」,這時候,「代碼重複度高」、「擴展功能變得困難」就會浮現;而在重構中採起的手段,每每就是把這些龐然大物分解成一個個職責更爲清晰的「小而美的函數」。對象
第4章 註釋基礎
做者提到,註釋最多也就是一種必須的惡。註釋不能美化糟糕的代碼,經過良好的代碼自己就能夠闡述你的意圖。變量
惟一真正好的註釋是你想辦法不去寫的註釋。擴展
第5章 格式
垂直格式:緊密相關的代碼應該互相靠近
橫向格式:空格和縮進
第6章 對象和數據結構
得墨忒耳律:類C的方法f只應該調用一下對象的方法,方法不該調用由任何函數返回的對象的方法:
1.C
2.由f建立的對象
3.做爲參數傳遞給f的對象
4.由C的實體變量持有對象
第7章 錯誤處理
使用異常而非返回碼
先寫try-catch-finally語句
給出異常發生的環境說明
依調用者須要定義異常類(方便修復bug時,進行代碼調試)
別返回null值(我以爲這一點很重要,若是一不當心沒有加一些null值的判斷的話,很容易形成空指針異常;從寫代碼層面,進行這種額外的檢查也蠻麻煩的)
別傳遞null值(同上)
總結:良好的錯誤處理,對於代碼維護很是重要,能夠減小發現問題的開銷
第8章 邊界