推薦這五本書。
1、代碼整潔之道
本書提出一種觀念:代碼質量與其整潔度成正比。干凈的代碼,既在質量上較為可靠,也為后期維護、升級奠定了良好基礎。作為編程領域的佼佼者,本書作者給出了一系列行之有效的整潔代碼操作實踐。這些實踐在本書中體現為一條條規則(或稱“啟示”),并輔以來自現實項目的正、反兩面的范例。只要遵循這些規則,就能編寫出干凈的代碼,從而有效提升代碼質量。
本書閱讀對象為一切有志于改善代碼質量的程序員及技術經理。書中介紹的規則均來自作者多年的實踐經驗,涵蓋從命名到重構的多個編程方面,雖為一“家”之言,然誠有可資借鑒的價值。
2、設計模式 : 可復用面向對象軟件的基礎
這本書結合設計實作例從面向對象的設計中精選出23個設計模式,總結了面向對象設計中最有價值的經驗,并且用簡潔可復用的形式表達出來。書中分類描述了一組設計良好、表達清楚的軟件設計模式,這些模式在實用環境下特別有用。此書適合大學計算機專業的學生、研究生及相關人員參考。
書中涉及的設計模式并不描述新的或未經證實的設計,只收錄了那些在不同系統中多次使用過的成功設計。
3、軟技能:代碼之外的生存指南
4、架構整潔之道
《架構整潔之道》是創造“Clean神話”的Bob大叔在架構領域的登峰之作,圍繞“架構整潔”這一重要導向,系統地剖析其緣起、內涵及應用場景,涵蓋軟件研發完整過程及所有核心架構模式。《架構整潔之道》分為6部分,第1部分綱領性地提出軟件架構設計的終極目標,描述軟件架構設計的重點與模式;第2~4部分從軟件開發中三個基礎編程范式的定義和特征出發,進一步描述函數、組件、服務設計與實現的定律,以及它們是如何有效構建軟件系統的整體架構的;第5部分從整潔架構的定義開始,詳細闡述軟件架構設計過程中涉及的方方面面,包括劃分內部組件邊界、應用常見設計模式、避開錯誤、降低成本、處理特殊情況等,并以實戰案例將內容有機整合起來;第6部分講述具體實現細節;附錄則透過作者數十年的軟件從業經歷再次印證《架構整潔之道》的觀點。
5、構建之法 現代軟件工程(第三版)
軟件工程牽涉的范圍很廣, 同時也是一般院校的同學反映比較空洞乏味的課程。 但是,軟件工程 的技術對于投身 IT 產業的學生來說是非常重要的。作者有在世界一流軟件企業 20 年的一線軟件開 發經驗,他在數所高校進行了多年的軟件工程教學實踐,總結出了在 16 周的時間內讓同學們通過 “做 中學 (Learning By Doing)” 掌握實用的軟件工程技術的教學計劃,并得到高校師生的積極反饋。在此 基礎上,作者對軟件工程的各個知識點和實戰技能要求進行了系統性整理,形成教材。目前,本書已經在至少 25 所高校作為軟件工程課程的教材。
本書共分 17 章, 對照美國 ACM/IEEE 2013 年出版的計算機科學教學指導中軟件工程相關部分, 本書覆蓋了其中大多數的核心內容。本書同時覆蓋了最新的業界實戰方法,軟件團隊中各個角色的成 長和關系,以及 IT 行業的創新奧秘。作者可以向感興趣的讀者提供全部章節的教學課件。