Part I: Thesis#

本書的第一部分建立了全書的核心論點:軟體工程不等於程式設計

程式設計是產出程式碼的行為,而軟體工程則是程式設計在時間、規模與取捨之上的延伸。當程式碼需要在組織中長期維護、跨團隊協作、並持續演進時,我們面對的就不再只是「如何寫出正確的程式」,而是「如何讓程式碼在數十年間持續運作並保持健康」。

Google 從這個基本區分出發,探討了三個關鍵維度:

  • 時間 (Time):程式碼的預期壽命如何影響工程決策
  • 規模 (Scale):組織成長對技術與流程帶來的挑戰
  • 取捨 (Trade-offs):在不確定性下如何做出以證據為基礎的工程決策

本部分包含章節#

  • Chapter 1: What Is Software Engineering? — 定義軟體工程,區分程式設計與軟體工程的根本差異