
測(cè)試驅(qū)動(dòng)開發(fā)與軟件重構(gòu)的培訓(xùn)
面向?qū)ο蟮闹R(shí)地圖
面向?qū)ο蟮脑瓌t
IS0LD原則(Single Responsibility原則,0pen Closed原則,Liskov Substitution原則,Interface Segregation原則,Dependency Inversion原則)
DRY原則
…
面向?qū)ο蟮哪J脚c方法
模式(架構(gòu)模式、分析模式、設(shè)計(jì)模式、實(shí)現(xiàn)模式)
方法:TDD、UDD、DDD、FDD、BDD…
面向?qū)ο蟮膶?shí)踐與工具
實(shí)踐(Pair Programming、Unit Test、Refactor…)
工具(XUnit、Mock、Git、Maven、Jenkins…)
三個(gè)基本元素
角色、職責(zé)、協(xié)作
用例驅(qū)動(dòng)開發(fā)
面向?qū)ο蟮能浖_發(fā)
角色、職責(zé)、協(xié)作
UML與00AD
設(shè)計(jì)畫布
四色建模法
健壯性分析圖法
CRC卡片法
Workshop:E-learning
繪制用例圖
用戶故事
粒度與層次
場(chǎng)景
設(shè)計(jì)畫布
角色、職責(zé)、協(xié)作
驗(yàn)收測(cè)試驅(qū)動(dòng)開發(fā)
實(shí)例化需求
場(chǎng)景驅(qū)動(dòng)設(shè)計(jì)
行為驅(qū)動(dòng)開發(fā)
使用Cucumber
確定角色、職責(zé)、協(xié)作
Kata_01:0rder Payment
從故事開始
基于文本的自動(dòng)化
基于Gherkin語法
Given、When、Then、And、But
富有表現(xiàn)力的場(chǎng)景
組織代碼
角色、職責(zé)、協(xié)作
測(cè)試驅(qū)動(dòng)開發(fā)
基本匠藝實(shí)踐
紅色
綠色
藍(lán)色
TDD三項(xiàng)法則
F.R.I.S.T
Kata_02:Currency
尋找結(jié)對(duì)伙伴
選取用戶故事
編寫測(cè)試用例
紅色->綠色->藍(lán)色
偽實(shí)現(xiàn)
顯明實(shí)現(xiàn)
三角法
第二天
重構(gòu)與設(shè)計(jì)模式
三個(gè)基本手法
抽象、封裝、多態(tài)
重構(gòu)工具箱
腐爛的代碼
識(shí)別壞味道
應(yīng)用重構(gòu)技法
小步前進(jìn)
Clean Code
Kata_03:Trainning
實(shí)現(xiàn)功能的代碼
識(shí)別代碼壞味道
重構(gòu)手法運(yùn)用
重構(gòu)導(dǎo)向模式
繪制重構(gòu)地圖
重構(gòu)導(dǎo)向模式
可讀性好的代碼
由異味導(dǎo)向的重構(gòu)
由原則導(dǎo)向的重構(gòu)
應(yīng)用設(shè)計(jì)模式
抽象變化點(diǎn)
封裝職責(zé)
利用多態(tài)進(jìn)行解耦
Kata_04:iCourse
重構(gòu)到策略模式
重構(gòu)到工廠模式
重構(gòu)到命令模式
重構(gòu)到模板模式
重構(gòu)到職責(zé)鏈模式
重構(gòu)到適配器模式
重構(gòu)到MVC框架
解構(gòu)設(shè)計(jì)模式
識(shí)別變化點(diǎn)
關(guān)注點(diǎn)分離
職責(zé)的抽離
封裝變化點(diǎn)
三種封裝手法
依賴解耦
組合還是多態(tài)
設(shè)計(jì)的原本