0人評分過此書

簡潔的Python:重構你的舊程式

出版日期
2018/12/25
閱讀格式
PDF
書籍分類
學科分類
ISBN
9789864769926

本館館藏

借閱規則
當前可使用人數 30
借閱天數 14
線上看 0
借閱中 0
選擇分享方式

推薦本館採購書籍

您可以將喜歡的電子書推薦給圖書館,圖書館會參考讀者意見進行採購

讀者資料
圖書館
* 姓名
* 身分
系所
* E-mail
※ 我們會寄送一份副本至您填寫的Email中
電話
※ 電話格式為 區碼+電話號碼(ex. 0229235151)/ 手機格式為 0900111111
* 請輸入驗證碼
現在有許多領域都廣泛使用Python,例如軟體建構、系統管理與資料處理。在這些領域中,經驗老到的專家可以找到效率低下、有問題的案例,以及導致不良程式的隱患。看完這本書的讀者將會瞭解這些問題,更重要的是知道如何修正它們。

本書首先介紹編寫簡潔程式的基本元素,以及它在Python程式設計中有多麼重要。你將瞭解如何運用Python標準程式庫與軟體設計最佳做法來編寫高效且易讀的程式。你也會學到如何在Python中實現SOLID原則,以及使用裝飾器來改善程式。本書將更深入地探討Python的物件導向程式設計,告訴你如何透過描述器與產生器來使用物件。本書也會展示軟體測試程式的設計原則,以及如何在程式中實作設計模式來解決軟體問題。在最後一章,我們會從堅實平台的基礎程式開始談起,將單體應用程式拆成微服務。

讀完本書之後,你將能夠熟練地運用業界認可的編寫技術來設計簡潔、易維護、易讀的Python程式。

你會學到;
‧設定工具,在開發環境中高效率地工作
‧Python的魔術方法如何協助我們編寫更好的程式
‧利用Python的特性來建立更高級的物件導向設計
‧使用裝飾器與描述器來移除重複的程式
‧藉助單元測試來有效地重構程式碼
‧在Python中實現SOLID原則
  • 前言
  • 第1章 簡介、程式碼格式與工具
    • 簡潔程式碼的意義
    • 簡潔程式碼的重要性
      • 格式化在簡潔程式碼之中的角色
      • 遵守專案的編寫風格指南
    • docstring 與註釋
      • docstring
      • 註釋
      • 註釋可取代docstring 嗎?
      • 設置強制執行基本品管的工具
    • 結論
  • 第2章 符合Python 風格的程式
    • 索引與切片
      • 建立你自己的序列
    • 環境管理器
      • 實作環境管理器
    • 特性、屬性,以及物件方法的各種型態
      • Python 的底線
      • 特性
    • 可迭代物件
      • 建立可迭代物件
      • 建立序列
    • 容器物件
    • 物件動態屬性
    • 可呼叫物件
    • 魔術方法摘要
    • Python 的注意事項
      • 可改變的預設引數
      • 擴展內建型態
    • 結論
    • 參考文獻
  • 第3章 好程式的特徵
    • 依合約設計(Design by contract)
      • 先決條件
      • 後置條件
      • 符合Python 習慣的合約
      • 依合約設計—結論
    • 防禦性程式設計
      • 錯誤處理
      • 在Python 中使用斷言
    • 分離關注點
      • 內聚性與耦合
    • 讓你活得更輕鬆的縮寫詞
      • DRY/OAOO
      • YAGNI
      • KIS
      • EAFP/LBYL
    • 組合與繼承
      • 當繼承是好的決定時
      • 繼承的反模式
      • Python 的多重繼承
    • 函式與方法的引數
      • Python 的函式引數如何工作?
      • 函式的引數數量
    • 關於優良軟體設計的最後提示
      • 軟體的正交性
      • 構建程式碼
    • 結論
    • 參考文獻
  • 第4章 SOLID 原則
    • 單一功能原則
      • 有太多功能的類別
      • 分配功能
    • 開閉原則
      • 不遵守開閉原則的維護性風險案例
      • 重構事件系統來提升擴展性
      • 擴展事件系統
      • 關於OCP 的最終說明
    • 里氏替換原則
      • 用工具來檢測LSP 問題
      • 較細微的LSP 違反案例
      • LSP 摘要
    • 介面隔離
      • 提供過多功能的介面
      • 介面越小越好
      • 介面應該多小?
    • 依賴反轉
      • 剛性依賴的案例
      • 將依賴關係反過來
    • 結論
    • 參考文獻
  • 第5章 使用裝飾器來改善程式
    • Python 的裝飾器是什麼?
      • 裝飾函式
      • 裝飾類別
      • 其他類型的裝飾器
      • 傳遞引數給裝飾器
      • 裝飾器的正確用法
    • 有效的裝飾器—避免常見錯誤
      • 保留被包裝的原始物件的資料
      • 在裝飾器裡面處理副作用
      • 建立必定有效的裝飾器
    • 用裝飾器來遵守DRY 原則
    • 裝飾器與分離關注點
    • 分析優良的裝飾器
    • 結論
    • 參考文獻
  • 第6章 藉由描述器來充分使用物件
    • 初會描述器
      • 描述器背後的機制
      • 描述器協定的各種方法
    • 描述器的類型
      • 非資料描述器
      • 資料描述器
    • 描述器的實際動作
      • 描述器的應用
      • 各種描述器的實作形式
      • 關於描述器的其他注意事項
    • 分析描述器
      • Python 內部如何使用描述器?
      • 在裝飾器中實作描述器
    • 結論
    • 參考文獻
  • 第7章 使用產生器
    • 技術需求
    • 建立產生器
      • 初探產生器
      • 產生器運算式
    • 典型的迭代法
      • 典型的迭代寫法
      • Python 的迭代器模式
    • 協同程序
      • 產生器介面的方法
      • 更高級的協同程序
    • 非同步程式設計
    • 結論
    • 參考文獻
  • 第8章 單元測試與重構
    • 設計原理與單元測試
      • 關於其他形式的自動測試
      • 單元測試與敏捷軟體開發
      • 單元測試與軟體設計
      • 定義測試目標的邊界
    • 測試框架與工具
      • 單元測試的框架與程式庫
      • 代碼覆蓋率
      • 模擬物件
    • 重構
      • 演進你的程式碼
      • 不是只有成品程式需要演化
    • 關於單元測試的其他想法
      • 特性測試
      • 突變測試
    • 測試驅動開發簡介
    • 結論
    • 參考文獻
  • 第9章 常見的設計模式
    • 在Python 中採用設計模式的注意事項
    • 設計模式實例
      • 創造型模式
      • 結構型模式
      • 行為型模式
    • 空物件模式
    • 關於設計模式的最終說明
      • 模式對設計造成的影響
      • 模型的命名
    • 結論
    • 參考文獻
  • 第10章 簡潔的結構
    • 從簡潔的程式碼到簡潔的結構
      • 分離關注點
      • 抽象
    • 軟體元件
      • 套件
      • 容器
    • 使用案例
      • 程式碼
      • 服務
      • 分析
    • 結論
    • 參考文獻
    • 總結
  • 索引
  • 出版地 臺灣
  • 語言 繁體中文

評分與評論

請登入後再留言與評分
幫助
您好,請問需要甚麼幫助呢?
使用指南

客服專線:0800-000-747

服務時間:週一至週五 AM 09:00~PM 06:00

loading