軟體設計的哲學,第一版
  • 简体中文
  • English
  • 繁体中文
GitHub
  • 简体中文
  • English
  • 繁体中文
GitHub
  • 簡介
  • 前言
  • 第 1 章 介紹
  • 第 2 章 複雜性的本質
  • 第 3 章 能工作的程式碼是不夠的
  • 第 4 章 模組應該是深的
  • 第 5 章 資訊隱藏和資訊洩露
  • 第 6 章 通用的模組是更深的
  • 第 7 章 不同的層級,不同的抽象
  • 第 8 章 下沉複雜性
  • 第 9 章 在一起更好還是分開更好?
  • 第 10 章 透過定義來規避錯誤
  • 第 11 章 設計兩次
  • 第 12 章 不寫註釋的四個藉口
  • 第 13 章 註釋應該描述程式碼中難以理解的內容
  • 第 14 章 選取名稱
  • 第 15 章 先寫註釋
  • 第 16 章 修改現有的程式碼
  • 第 17 章 一致性
  • 第 18 章 程式碼應該是易理解的
  • 第 19 章 軟體發展趨勢
  • 第 20 章 效能設計
  • 第 21 章 結論
  • 總結

第 21 章 結論

這本書只針對一件事:複雜性。處理複雜性是軟體設計中最重要的挑戰。這也是為什麼系統難以構建和維護的原因,而且複雜的系統通常執行也很緩慢。在本書中,我試圖描述導致複雜性的根本原因,例如依賴性和模糊性。我已經討論了可以幫助你識別不必要的複雜性的危險訊號,例如資訊洩露、不必要的錯誤情況或名稱過於籠統。我提出了一些通用的想法,可以用來建立更簡單的軟體系統,例如,努力建立更深和更通用的類、透過定義來規避錯誤以及將介面文件與實現文件分離。最後,我討論了產生簡單設計所需的投資思維。

所有這些建議的缺點是它們會在專案的早期階段需要額外的工作量。此外,如果你不習慣於思考設計問題,那麼當你在學習良好的設計技巧時,你的速度還會更慢一些。如果對你而言唯一重要的事情讓你當前的程式碼儘快執行,那麼思考設計就好像是件苦差事,而這實際上妨礙了你實現真正的目標。

另一方面,如果良好的設計對你來說是重要的目標,那麼本書中的思想會讓程式設計變得更有趣。設計是一個令人著迷的謎題:如何用最簡單的結構解決特定問題?探索不同的方法很有趣,找到一種既簡單又強大的解決方案是一種很棒的感覺。整潔、簡單和易理解的設計是一件美事。

此外,你對良好設計的投資將很快獲得回報。在專案開始時仔細定義的模組,在你一遍又一遍地重複使用它們時,會節省你的時間。你六個月前編寫的清晰文件將為你節省修改程式碼以新增新功能的時間。花在磨練設計技能上的時間也將有所回報:隨著技能和經驗的增長,你會發現你可以越來越快地做出好的設計。一旦你掌握了方法,好的設計實際上並不會比草率的設計花費更多的時間。

成為一名優秀設計師的回報是,你可以將大部分時間花在設計階段,這很有趣。而糟糕的設計師花費大量時間在複雜而脆弱的程式碼中尋找缺陷。如果你提高了設計技能,不僅可以更快地生產出更高質量的軟體,而且軟體開發過程也將也會更加愉快。

上次更新: 2025/4/8 凌晨3:21
Prev
第 20 章 效能設計
Next
總結