會說話的代碼——書寫自表達代碼之道( 簡體 字) | |
作者:王洪亮 | 類別:1. -> 程式設計 -> 綜合 |
出版社:電子工業出版社 | 3dWoo書號: 36075 詢問書籍請說出此書號! 有庫存 NT售價: 225 元 |
出版日:8/1/2013 | |
頁數:204 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787121208768 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
目錄
第1章 劣質代碼帶來的劣質體驗 1 1.1 代碼的可讀性問題 1 1.1.1 命名類問題 2 1.1.2 注釋類問題 6 1.1.3 風格類問題 8 1.1.4 結構類問題 11 1.1.5 架構類問題 18 1.2 代碼的可測試性問題 22 1.3 代碼的可維護性問題 22 1.3.1 需求變更難以應對 23 1.3.2 糾纏不清的Bug 23 第2章 劣質代碼是怎么產生的 25 2.1 理論知識匱乏 25 2.2 對編程語言不熟悉 29 2.3 對開發環境不熟悉 31 2.4 對設計方法不了解 32 2.5 編程習慣不佳 32 2.6 英語能力不足 35 2.7 管理人員誤導 36 第3章 自表達代碼 39 第4章 理論知識的補充 41 4.1 面向對象的基礎知識 41 4.1.1 封裝 41 4.1.2 繼承 42 4.1.3 多態 44 4.2 設計的基本原則 45 4.2.1 單一職責原則 45 4.2.2 開放封閉原則 46 4.2.3 里氏代換原則 48 4.2.4 接口分離原則 48 4.2.5 依賴倒置原則 49 4.2.6 迪米特法則 50 4.2.7 不要重復你自己 51 4.3 圈復雜度 52 第5章 編程環境的熟悉 53 5.1 保存動作與自動格式化 53 5.2 快速修復 58 5.2.1 缺少類 59 5.2.2 缺少方法 60 5.2.3 缺少變量 61 5.2.4 類型不匹配 62 5.3 重構 63 5.3.1 改名 64 5.3.2 改變方法簽名 68 5.3.3 提取方法 69 5.3.4 移動 73 5.3.5 引入參數對象 76 5.3.6 引入接口 77 5.3.7 向上提取 78 5.3.8 提取常量 81 5.3.9 局部變量變為域變量 82 5.3.10 引入工廠 82 5.4 自動完成 83 5.5 大綱 84 5.6 Eclipse快捷鍵 86 第6章 編程語言的學習 88 6.1 注解 88 6.2 異常 94 6.3 反射 97 6.4 泛型 100 第7章 設計方法的學習 101 7.1 設計模式 101 7.2 依賴注入 102 7.3 Map的妙用 103 7.4 采用位掩碼減少類的個數 107 7.5 List處理Z-Order 110 第8章 英文能力的提升 113 8.1 詞性 113 8.2 時態 115 8.3 語法 116 8.4 否定詞 117 8.5 成對詞 119 8.6 近義詞 120 8.7 前綴、擴展名 120 8.8 縮寫 122 8.9 正確用詞 122 第9章 編程習慣的改進 124 9.1 命名方面的改進 124 9.1.1 命名的基本原則 124 9.1.2 包的命名 125 9.1.3 接口的命名 125 9.1.4 類的命名 125 9.1.5 注解的命名 126 9.1.6 枚舉的命名 126 9.1.7 方法的命名 127 9.1.8 變量 129 9.1.9 常量的命名 130 9.1.10 相似的命名 130 9.2 注釋方面的改進 131 9.2.1 JavaDoc 131 9.2.2 TODO、FIXME和XXX 132 9.2.3 其他注釋 133 9.2.4 方法的注釋 133 9.2.5 類的注釋 133 9.2.6 版權聲明 134 9.3 風格方面的改進 135 9.3.1 縮進與對齊 135 9.3.2 空格與空行 138 9.3.3 行長與換行 140 9.4 結構方面的改進 140 9.4.1 縮短長判定 140 9.4.2 縮短長分支 144 9.4.3 減少參數個數 148 9.4.4 減少嵌套的層數 150 9.4.5 去掉重復代碼 152 9.4.6 分離曖昧關系 155 9.4.7 多維度變化 156 9.4.8 縮短長方法 158 9.4.9 正則表達式 158 9.4.10 自相似對象 160 9.4.11 同質化處理 161 9.5 架構方面的改進 162 9.5.1 MVC 162 9.5.2 包含關系 164 9.5.3 繼承關系 164 9.5.4 包的劃分 165 9.5.5 內部類、內部接口及內部枚舉 166 9.5.6 匿名類 167 9.5.7 有限取值范圍 168 第10章 測試代碼的自表達改進 174 10.1 測試代碼的可讀性 175 10.2 測試代碼的可維護性 179 10.3 測試代碼的可擴展性 179 10.4 測試語法 180 第11章 Lambda表達式 182 11.1 filter 183 11.2 forEach 183 11.3 findAny與findFirst 184 11.4 sorted 184 11.5 uniqueElements 185 附錄 186 寫得不好的代碼有各種各樣的問題,會給讀者帶來不好的閱讀體驗,并且如果代碼寫得不夠好,文檔和代碼不一致,注釋和代碼不一致,那么對維護人員來說,理解代碼和進入項目組都是有困難的。如果代碼寫得不夠好,就需要擴展功能,修改Bug時所需要花費的時間也較長。
自表達代碼是一種采用接近于自然語言的方式書寫代碼的主張。 代碼可讀性、可擴展性、可測試性是關聯代碼質量的重要參考指標。本書從各個角度來分析產生劣質代碼的原因,并從代碼的命名、注釋、風格、結構、架構等方面著手,對提高設計能力、熟悉開發環境、了解編程語言、提高英語能力等諸多方面提出了具體的改善建議。 |