
軟件設(shè)計培訓(xùn)
第一部分 好的設(shè)計:“球不是這么踢的”
讓指導(dǎo)行動
設(shè)計已死?
足夠好的軟件
化整為0,個個擊破
先實現(xiàn)后設(shè)計
第二部分 動手!
從你的場景開始
獲取需求
場景驅(qū)動與故事劃分
從測試開始
驅(qū)動設(shè)計
實現(xiàn)
重構(gòu)
再設(shè)計
結(jié)對編程
第三部分 設(shè)計的原本
角色、職責(zé)、協(xié)作
再看封裝、抽象與多態(tài)
職責(zé)的封裝
重構(gòu)與設(shè)計模式是一種封裝技術(shù)
樁對象
重構(gòu)技術(shù)的變種
TDD、重構(gòu)導(dǎo)向模式
第四部分 用例驅(qū)動設(shè)計
用例與功能
用例場景
健壯性分析圖
時序圖
協(xié)作圖
類圖
包圖
邏輯框架和層
模型-視圖分離原則
第五部分 領(lǐng)域驅(qū)動設(shè)計
何為“領(lǐng)域驅(qū)動設(shè)計”
通用語言
模型驅(qū)動設(shè)計
面向深層理解的重構(gòu)
保持模型一致性
第六部分 職責(zé)驅(qū)動設(shè)計
GRASP是什么?
創(chuàng)建者
信息
低耦合
控制器
高內(nèi)聚
多態(tài)
純虛構(gòu)
間接性
防止變異
第七部分 測試驅(qū)動開發(fā)
保持節(jié)奏:紅色、綠色、重構(gòu)、模式
用ATDD滿足客戶需求
正確地做事:TDD
做正確的事:ATDD
增量式開發(fā)
重構(gòu)以保持代碼的健康
下士!保持綠色!
第八部分 設(shè)計模式
設(shè)計模式與變遷
行為型模式
創(chuàng)建型模式
結(jié)構(gòu)型模式
第九部分 設(shè)計原則
開閉原則
里氏科夫替換原則
單一職責(zé)原則
接口隔離原則
依賴倒置原則
不要重復(fù)你自己原則
你不需要它原則
KISS原則
第十部分 開發(fā)部曲
計劃游戲
簡單設(shè)計
測試驅(qū)動開發(fā)
重構(gòu)
團(tuán)隊協(xié)作
持續(xù)構(gòu)建
迭代
反思改進(jìn)