作 者:(美)羅伯特·C..馬丁 著 韓磊 譯
定 價:128
出 版 社:電子工業出版社
出版日期:2022年05月01日
頁 數:376
裝 幀:平裝
ISBN:9787121432248
"傳奇人物鮑勃大叔定義軟件開發專業和技藝的原則,闡述所需紀律、標準和操守,讓你能交付強固、高效的代碼,並為自己編寫的軟件感到自豪。他為軟件匠藝的基本紀律提供了實用、詳盡和規範的指南。書中討論了相關標準,展示了世界對開發者的期望與開發者自己的期望之間有何不同,幫助讀者彌合這種差異。鮑勃最後總結了編程職業的操守,闡述所有開發者都該對同事、用戶和他們自己做出基礎承諾。 有了鮑伯大叔的見解,所有的程序員和他們的經理都可以始終如一地交付能夠建立信任而非破壞信任的代碼——在依賴軟件生存的用戶和社會中建立信任等
●第1章 匠藝
第Ⅰ部分 紀律
極限編程
生命之環
測試驅動開發
重構
簡單設計
協同編程
驗收測試
第2章 測試驅動開發
概述
軟件
TDD三法則
第四法則
基礎知識
簡單示例
棧
質因數
保齡球局
小結
第3章 高級測試驅動開發
排序示例一
排序示例二
卡殼
安排、行動、斷言
進入BDD
有限狀態機
再談BDD
測試替身
DUMMY
STUB
SPY
MOCK
FAKE
TDD不確定性原理
倫敦派對決芝加哥派
確定性問題
倫敦派
芝加哥派
融合
架構
小結
第4章 設計
測試數據庫
測試GUI
GUI輸入
測試模式
專為測試創建子類
自勵
HUMBLE OBJECT
測試設計
脆弱測試問題
一一對應
打破對應關繫
VIDEO STORE
具體vs通用
轉換優先順序
{}→NIL(無代碼→空值)
NIL→CONSTANT(空值→常量)
UNCONDITIONAL→SELECTION(無條件→條件選擇)
VALUE→LIST(值→列表)
STATEMENT→RECURSION(語句→遞歸)
SELECTION→ITERATION(條件選擇→遍歷)
VALUE→MUTATED VALUE(值→改變了的值)
示例:斐波那契數列
變換模式優先順序假設
小結
第5章 重構
什麼是重構
基礎工具包
重命名
方法抽取
變量抽取
字段抽取
魔方
紀律
測試
快速測試
打破緊密的一一對應關繫
持續重構
果斷重構
讓測試始終能通過
留條出路
小結
第6章 簡單設計
YAGNI
用測試覆蓋
覆蓋
漸近目標
設計?
但還有更多好處
充分表達
底層抽像
再論測試:問題的後半部分
盡量減少重復
意外重復
尺寸盡量小
簡單設計
第7章 協同編程
第8章 驗收測試
紀律
持續構建
第Ⅱ部分 標準
你的新CTO
第9章 生產力
永不交付S**T
成本低廉的變更適應能力
時刻準備著
穩定的生產力
第10章 質量
持續改進
免於恐懼
很好質量
我們不把問題留給QA
QA之疾
QA什麼問題也不會發現
測試自動化
自動化測試與用戶界面
測試用戶界面
第11章 勇氣
我們彼此補位
靠譜的預估
你得說不
持續努力學習
教導
第Ⅲ部分 操守
第一個程序員
75年
書獃子與救世主
榜樣和惡棍
我們統治世界
災難
誓言
第12章 傷害
首先,不造成傷害
對社會無害
對功能的損害
對結構無害
柔軟
測試
優選的作品
使其正確
什麼是好結構
艾森豪威爾矩陣
程序員是利益相關者
盡力而為
可重復證據
狄克斯特拉
正確性證明
結構化編程
功能分解
TDD
第13章 集成
小周期
源代碼控制的歷史
GIT
短周期
持續集成
分支與切換
持續部署
持續構建
持續改進
測試覆蓋率
突變測試
語義穩定性
清理
創造
保持高生產力
拖慢速度的因素
解決注意力分散問題
時間管理
第14章 團隊合作
組團工作
開放式/虛擬辦公室
誠實和合理地預估
謊言
誠實、準確、準確
故事1:載體
故事2:pCCU
教訓
準確度
準確度
彙總
誠實
尊重
永不停止學習
鮑勃大叔因在技術人群中聲名遠播的Clean繫列在全球圈粉無數。本書為其燙手新作,旨在為廣大工程師指明一條通向匠師之路,包括飽經洗礪的敏捷技術實踐,如何通過持續的努力提高專業素養,軟件可用之上的目標與技能,以及如何激發團隊優選潛能,等等。本書融會幾本經典著作的精髓,將“整潔”方法論推向至高境界——軟件開發者有責任維護世界正常運行,而“人”纔是“技術”的決定者。 本書共分三部分,前兩部分用實例闡釋TDD在敏捷軟件中的運用,以及驗收測試、協同編程等常被忽視的敏捷側面與具體策略,還探討了頗有價值的軟件設計方案相關話題;第Ⅲ部分撥地而起,直接提出十條堪稱金玉良言的“規勸”,以幫助程序員成為團隊基石。本書適合所有軟件開發者、測試工程師及工程類院校師生,對技術團隊負責人及架構師同樣大有助益。
(美)羅伯特·C..馬丁 著 韓磊 譯
"羅伯特 C. 馬丁(鮑勃大叔),軟件開發行業領軍人物,曾任C++ Report雜志主編、敏捷聯盟首任主席、Object Mentor公司總裁,面向對像設計、模式、UML、敏捷方法學和極限編程領域的資深顧問。1964年,年僅12歲的就已寫下他的第一行代碼。他自1970年起從事程序員職業。他與人合辦了cleancoders.com網站,為軟件開發者提供在線視頻培訓服務。他還創辦了Uncle Bob咨詢有限公司,為分布於世界各地的大公司提供軟件咨詢、培訓和技能培養服務。同時,他也供職於芝加哥的軟件咨詢企業8th Light,任大匠(Master Craftsman)一職。馬丁先生在多本行業等