幫助中心 | 我的帳號 | 關於我們

C++代碼整潔之道(C++17可持續軟體開發模式實踐)/華章程序員書庫

  • 作者:(德)斯蒂芬·羅斯|譯者:連少華//郭發陽//陳濤
  • 出版社:機械工業
  • ISBN:9787111621904
  • 出版日期:2019/05/01
  • 裝幀:平裝
  • 頁數:276
人民幣:RMB 89 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書介紹如何使用現代C++編寫可維護、可擴展和可持久的軟體。對於每一個對編寫整潔的C++代碼感興趣的開發人員、軟體架構師或團隊領導來說,這本書都是必需的。如果你想自學編寫整潔的C++代碼,本書也正是你需要的。本書旨在幫助所有級別的C++開發人員編寫可理解的、靈活的、可維護的和高效的C++代碼。即使是經驗豐富的C++開發人員,也將受益匪淺。

作者介紹
(德)斯蒂芬·羅斯|譯者:連少華//郭發陽//陳濤

目錄
譯者序
關於作者
關於技術審校
致謝
第1章  簡介
  1.1  軟體熵
  1.2  整潔的代碼
  1.3  為什麼使用C++
  1.4  C++11—新時代的開始
  1.5  適合本書的讀者
  1.6  本書使用的約定
    1.6.1  擴展閱讀
    1.6.2  說明、提示和警告
    1.6.3  示例代碼
    1.6.4  編碼風格
  1.7  相關網站和代碼庫
  1.8  UML圖
第2章  構建安全體系
  2.1  測試的必要性
  2.2  測試入門
  2.3  單元測試
  2.4  關於QA
  2.5  良好的單元測試原則
    2.5.1  單元測試的代碼的質量
    2.5.2  單元測試的命名
    2.5.3  單元測試的獨立性
    2.5.4  一個測試一個斷言
    2.5.5  單元測試環境的獨立初始化
    2.5.6  不對getters和setters做單元測試
    2.5.7  不對第三方代碼做單元測試
    2.5.8  不對外部系統做單元測試
    2.5.9  如何處理資料庫的訪問
    2.5.10  不要混淆測試代碼和產品代碼
    2.5.11  測試必須快速執行
    2.5.12  測試替身
第3章  原則
  3.1  什麼是原則
  3.2  保持簡單和直接原則(KISS)
  3.3  不需要原則(YAGNI)
  3.4  避免複製原則(DRY)
  3.5  信息隱藏原則
  3.6  高內聚原則
  3.7  松耦合原則
  3.8  小心優化原則
  3.9  最少驚訝原則(PLA)
  3.10  童子軍原則
第4章  C++代碼整潔的基本規範
  4.1  良好的命名
    4.1.1  名稱應該自解釋
    4.1.2  使用域中的名稱

    4.1.3  選擇適當抽象層次的名稱
    4.1.4  避免冗余的名稱
    4.1.5  避免晦澀難懂的縮寫
    4.1.6  避免匈牙利命名和命名前綴
    4.1.7  避免相同的名稱用於不同的目的
  4.2  註釋
    4.2.1  讓寫代碼像講故事一樣
    4.2.2  不要為易懂的代碼寫註釋
    4.2.3  不要通過註釋禁用代碼
    4.2.4  不要寫塊註釋
    4.2.5  特殊情況的註釋是有用的
  4.3  函數
    4.3.1  只做一件事情
    4.3.2  讓函數盡可能小
    4.3.3  函數命名
    4.3.4  使用容易理解的名稱
    4.3.5  函數的參數和返回值
  4.4  C++工程中的C風格代碼
    4.4.1  使用C++的string和stream替代C風格的char*
    4.4.2  避免使用printf()、sprintf()和gets()等
    4.4.3  使用標準庫的容器而不是C風格的數組
    4.4.4  用C++類型轉換代替C風格的強制轉換
    4.4.5  避免使用宏
第5章  現代C++的高級概念
  5.1  資源管理
    5.1.1  資源申請即初始化
    5.1.2  智能指針
    5.1.3  避免顯式的new和delete
    5.1.4  管理特有資源
  5.2  Move語義
    5.2.1  什麼是Move語義
    5.2.2  左值和右值的關係
    5.2.3  右值引用
    5.2.4  不要濫用Move
    5.2.5  零原則
  5.3  編譯器是你的搭檔
    5.3.1  自動類型推導
    5.3.2  編譯時計算
    5.3.3  模板變數
  5.4  不允許未定義的行為
  5.5  Type-Rich編程
  5.6  了解你使用的庫
    5.6.1  熟練使用
    5.6.2  熟練使用Boost
    5.6.3  應該了解的一些庫
  5.7  恰當的異常和錯誤處理機制
    5.7.1  防患于未然
    5.7.2  異常即異常—字面上的意思
    5.7.3  如果不能恢復則儘快退出
    5.7.4  用戶自定義異常

    5.7.5  值類型拋出,常量引用類型捕獲
    5.7.6  注意catch的正確順序
第6章  面向對象
  6.1  面向對象思想
  6.2  抽象—解決複雜問題的關鍵因素
  6.3  類的設計原則
    6.3.1  讓類盡可能小
    6.3.2  單一職責原則(SRP)
    6.3.3  開閉原則(OCP)
    6.3.4  里氏替換原則(LSP)
    6.3.5  介面隔離原則(ISP)
    6.3.6  無環依賴原則
    6.3.7  依賴倒置原則(DIP)
    6.3.8  不要和陌生人說話(迪米特法則)
    6.3.9  避免「貧血類」
    6.3.10  只說不問
    6.3.11  避免類的靜態成員
第7章  函數式編程
  7.1  什麼是函數式編程
    7.1.1  什麼是函數
    7.2.2  pure函數和impure函數
  7.2  現代C++中的函數式編程
    7.2.1  C++模板函數編程
    7.2.2  仿函數
    7.2.3  綁定和函數包裝
    7.2.4  Lambda表達式
    7.2.5  通用Lambda表達式(C++14)
  7.3  高階函數
  7.4  整潔的函數式編程代碼
第8章  測試驅動開發
  8.1  普通的舊單元測試的缺點
  8.2  測試驅動開發作為顛覆者
    8.2.1  TDD的流程
    8.2.2  TDD的一個小例子:Code Kata
  8.3  TDD的優勢
  8.4  什麼時候不應該使用TDD
第9章  設計模式和習慣用法
  9.1  設計原則與設計模式
  9.2  常見的設計模式及應用場景
    9.2.1  依賴注入模式
    9.2.2  Adapter模式
    9.2.3  Strategy模式
    9.2.4  Command模式
    9.2.5  Command處理器模式
    9.2.6  Composite模式
    9.2.7  Observer模式
    9.2.8  Factory模式
    9.2.9  Facade模式
    9.2.10  Money Class模式
    9.2.11  特例模式

  9.3  什麼是習慣用法
附錄A  UML簡要指南
參考文獻

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032