最新梯次
台北班:2025年2月21、22、23日 (五、六、日) /09:30-16:30
受益於微服務與事件驅動系統的普及,領域驅動設計(Domain-Driven Design;DDD)近年來廣為流行。本課程首先介紹領域驅動設計的原理,接著使用事件風暴(Event Storming)協助建立領域模型與通用語言(Ubiquitous Language)。在實作階段,套用Clean Architecture(簡潔架構),採用測試驅動開發(Test-Driven Development;TDD)方式撰寫程式。DDD + Clean Architecture + TDD,讓您三種願望一次滿足。
課程效益:
- 了解領域驅動設計之戰略、戰術設計以及實作DDD之設計模式。
- 透過事件風暴,建立領域模型與通用語言。
- 掌握《Clean Architecture》(中文版《整潔的軟體設計與架構》)這本書的重點,為日後深入學習奠定基礎。
- 應用分層原則、相依性原則、跨層原則於自己的軟體開發專案中,讓你的系統更容易修改與擴充。
- 透過實作練習結合理論與實務,徹底了解實作Clean Architecture所可能踩到的各種「雷」。
- 實作練習搭配事件風暴與測試驅動開發方法,讓實作Clean Architecture的活動更家簡單且有價值。
- 結合DDD + Event Storming + Clean Architecture + TDD,四種願望一次滿足。
課程內容:
領域驅動設計所提出的領域模型與通用語言概念,在分析階段搭配事件風暴工作坊,可以打破組織部門的穀倉效應,串起跨部門的商業價值鏈。在實作階段,套用簡潔架構,採用測試驅動開發方法,將通用語言直接表達在程式碼之中,將可大幅簡化軟體開發、部屬與維護的成本。
本課程涵蓋Eric Evans的《Domain-Driven Design: Tacking Complexity in the Heart of Software》、Alberto Brandolini的《Introducing EventStorming - An act of deliberate collective learning》以及Bob大叔的《Clean Architecture》等書之核心內容。課程以實作看板系統為例子,套用事件風暴方法,建立應用程式的領域物件模型 (domain model)與通用語言 (ubiquitous language)。最後,我們套用簡潔架構並採用測試驅動開發的方式,逐一實作看板系統的主要功能。
課程大綱:
- 領域驅動設計介紹。
- 戰略模式。
- 戰術模式。
- 事件風暴工作坊(Event Storming Workshop)
- 軟體架構的定義與目的。
- 整潔架構三原則:
- 首部曲:分層原則。
- 二部曲:相依性原則。
- 三部曲:跨層原則。
- 實作練習:
- 實例化規格(Specification by Example) 。
- 測試驅動開發。
- 撰寫程式碼。
- 尋找重構機會。
- 迭代與增量:完成基礎功能。
- 回顧與討論。
***
課程效益
- 徹底了解領域驅動設計的真意。
- 利用實作看板系統練習,同時串起領域域驅動設計(Domain-Driven Design;DDD)、Clean Architecture、測試驅動開發(Test-Driven Development;TDD)三種技術。
- 建立物件導向領域模型與共通語言。
- 快速掌握《Clean Architecture》(中文版《整潔的軟體設計與架構》)這本書的重點,讓別人誤以為你已經看完了整本書 為日後深入學習奠定基礎。
- 應用分層原則、相依性原則、跨層原則於自己的軟體開發專案中。
專業師資:陳建村 (Teddy Chen)
![]() |
|
相關文章閱讀:
- 領域驅動設計學習筆記(1):學習的切入角度(上)
- 領域驅動設計學習筆記(2):學習的切入角度(下)
- 領域驅動設計學習筆記(3):實驗計畫
- 領域驅動設計學習筆記(4):Bounded Context
- 領域驅動設計學習筆記(5):Aggregate (上)
- 領域驅動設計學習筆記(6):Aggregate (中)
- 領域驅動設計學習筆記(7):Aggregate (下)
- 領域驅動設計學習筆記(8):幫Event Handler取個好命字
- 領域驅動設計學習筆記(9):Query和Read Model
- 領域驅動設計學習筆記(10):實作Repository
- 領域驅動設計學習筆記(11):Bounded Context(上)
- 領域驅動設計學習筆記(12):Event Storming與User Story
- 領域驅動設計學習筆記(13):幫Event Storming加上使用者介面
- 領域驅動設計學習筆記(14):透過合約讓領域模型與通用語言更精確
- 領域驅動設計學習筆記(15):領域專家缺貨
- 領域驅動設計學習筆記(16):領域模型要放什麼東西?
- 領域驅動設計學習筆記(17):與外部系統的互動
- 領域驅動設計學習筆記(16):學DCI,重構Aggregate ,Part 1
- 領域驅動設計學習筆記(17):學DCI,重構Aggregate ,Part 2
- 領域驅動設計學習筆記(18):學DCI,重構Aggregate ,Part 3
- 領域驅動設計學習筆記(19):DDD需要套用Unit of Work (UoW) 設計模式嗎?
- 領域驅動設計學習筆記(20):再談Aggregate Root實作
- 領域驅動設計學習筆記(21):貧血模型與充血模型(上)
- 領域驅動設計學習筆記(22):貧血模型與充血模型(下)
- 領域模型 VS 資料模型
- Clean Architecture(1):軟體架構的定義與目的
- Clean Architecture(2):Port and Adapter Architecture
- Clean Architecture(3):精選參考範例
- Clean Architecture(4):架構三原則首部曲—分層原則
- Clean Architecture(5):架構三原則二部曲—相依性原則
- Clean Architecture(6):架構三原則三部曲—跨層原則
- 【Clean Architecture實作班】課程範例介紹
常見問題:
Q:請問參加這個課程需要有什麼能力嗎?
A:物件導向技術、設計模式,以及軟體開發經驗與程式轉寫能力,懂基礎的xUnit單元測試案例撰寫更佳。
Q: 請問這門課的上課方式為何?
A:包含理論講解、事件風暴工作坊與程式開發練習,理論與實務兼顧。
Q: 實作練習採用何種語言?
A:課程以Java語言為主,提供Java版本範例。學員可以選擇自己熟悉的程式語言進行實作練習。
費用
原價:$38,000元早鳥優惠: NT$29,900/人,2025年2月14日前報名。
泰迪之友票:$29,000 元
2人團報,$28,900 元/人
費用已包含:發票、教材、午餐、茶水。
本課程已結業梯次:
- 2018年9月4日
- 2018年10月20日
- 2019年4月19、20日 (五、六)
- 2019年7月6、7、13日 (六、日、六)
- 2020年2月14、15、16日 (五、六、日)
- 2020年7月3、4、5日 (五、六、日)
- 2021年1月15、16、17日 (五、六、日)
- 2021年4月2、3、4日 (五、六、日)
- 2021年8月6、7、8日 (五、六、日)
- 2021年9月10、11、12日 (五、六、日)
- 2021年12月3、4、5日 (五、六、日)
- 2022年1月14、15、16日 (五、六、日)
- 2022年3月4、5、6日 (五、六、日)
- 2022年5月6、7、8日 (五、六、日)
- 2022年8月26、27、28日 (五、六、日)
- 2022年12月2、3、4日 (五、六、日)
- 2023年2月10、11、12日 (五、六、日)
- 2023年4月21、22、23日 (五、六、日)
- 2023年7月28、29、30日 (五、六、日)
- 2023年10月20、21、22日 (五、六、日)
- 2023年11月17、18、19日 (五、六、日)
- 2024年02月23、24、25日 (五、六、日)
- 2024年04月12、13、14日 (五、六、日)
- 2024年06月14、15、16日 (五、六、日)
- 2024年9月6、7、8日 (五、六、日)
- 2024年12月13、14、15日 (五、六、日)
最新開課班次:
- 2025年02月21、22、23日 (五、六、日)
注意事項
- 報名方式:先填寫線上報名表,確認開課後將收到匯款通知,再行繳費即完成報名。
- 主辦單位將於開課日三天前以e-mail寄發上課通知,若未收到通知者請來電確認。
- 已完成繳費學員若因故無法上課,在開班日前一日申請退費者,退還已繳學費全額。開班日當天到課程進行1/3申請退費者,退還已繳學費四成。課程進行超過1/3之後無法上課將不予退費。 未達開班人數則延期或全額退費。
- 結業證書需全程出席方可獲得。
- 開課單位保留是否接受報名之權力。如遇天災或其他不可抗拒因素導致原訂日期無法開課,開課單位保留修訂日期權利。