TDD、BDD、ATDD、DDD 軟體開發模式
四個開發模式意思:
TDD:測試驅動開發(Test-Driven Development)
BDD:行為驅動開發(Behavior Driven Development)
ATDD:驗收測試驅動開發(Acceptance Test Driven Development)
DDD:領域驅動開發(Domain
Drive Design)
1、TDD:測試驅動開發(Test-Driven Development)
測試驅動開發是敏捷開發中的一項核心實踐和技術,也是一種設計方法論,TDD首先考慮使用需求(物件、功能、過程、介面等)
主要是編寫測試用例框架對功能的過程和介面進行設計,而測試框架可以持續進行驗證。大行其道的一些模式對TDD的支援都非常不錯,比如MVC和MVP等
2、BDD:行為驅動開發(Behavior Driven Development)
也就是行為驅動開發。這裡的B並非指的是Business,實際上BDD可以看作是對TDD的一種補充,讓開發、測試、BA以及客戶都能在這個基礎上達成一致,JBehave之類的BDD框架
3、ATDD:驗收測試驅動開發(Acceptance Test Driven Development)
通過單元測試用例來驅動功能程式碼的實現,團隊需要定義出期望的質量標準和驗收細則,以明確而且達成共識的驗收測試計劃(包含一系列測試場景)來驅動開發人員的TDD實踐和測試人員的測試指令碼開發。面向開發人員,強調如何實現系統以及如何檢驗
4、DDD:領域驅動開發(Domain Drive Design)
DDD指的是Domain
Drive Design,也就是領域驅動開發,DDD實際上也是建立在這個基礎之上,因為它關注的是Service層的設計,著重於業務的實現,將分析和設計結合起來,不再使他們處於分裂的狀態,這對於我們正確完整的實現客戶的需求,以及建立一個具有業務伸縮性的模型