《構建之法》第一章介紹了軟體工程的概念、理論、知識點以及軟體工程與電腦科學的關係。具體來說,這一章讓我瞭解了以下幾個概念:原始碼管理、配置管理、質量保證、軟體測試、需求分析、程式理解、軟體維護和服務運營,這些概念共同構成了軟體的生命週期。此外,我還讀到“將軟體與程式區分開來的是使用者體驗”這個理念,不由得聯想到我的程式碼只能歸類為“程式”。軟體系統是將系統的、有序的、可量化的方法應用於軟體的開發、運營和維護過程中,這包括需求分析、設計、構建、測試和維護幾個環節。文中還透過將紙飛機比作商用飛機來說明軟體開發的四個不同階段:玩具階段、業餘愛好階段、探索階段和成熟產業階段。最終得出了軟體=程式+軟體工程的結論。
《構建之法》第二章討論了個人的技術和流程。起初,我對單元測試感到困惑,不知道如何進行測試,也不明白測試的意義。為什麼要測試?程式執行正常不就行了嗎?為什麼還要程式的作者進行測試?這似乎非常麻煩。然而,閱讀之後,我意識到測試的重要性。單元測試結果的好壞是檢測一個程式優劣的標準,也是發現程式是否存在隱藏bug的標準。一個好的、標準的單元測試可以找出程式執行快慢的原因,從而進行最佳化。在這之後的迴歸測試我就看不懂了,還有什麼抽樣和程式碼注入,確實不太明白。但我理解到一點:程式碼的寫法不同會導致原始碼中一個函式的呼叫次數不同,從而影響呼叫的時間。因此,我也理解了效能測試的重要性。