SlideShare ist ein Scribd-Unternehmen logo
DDD
DDD
2020/10 DDDTW Meetup
Eason Kuo
DDD
DDD
•
•
•
DDD
DDD
DDD
DDD
DDD
2003 Eric Evans Domain-Driven Design
DDD ?
- -
DDD
DDD ?
?
DDD -
Strategic Modeling
DDD
•
•
•
•
•
Strategic Modeling
•
DDD
(1) ( Domain Storytelling
- (
)
Strategic Modeling
(2) Event Storming
()
Strategic Modeling
Tactical Modeling
Tactical Modeling
1 0 69
ORM
Tactical Modeling
Tactical Modeling
A. (
C.
B. )
Reason
Tactical Modeling
A.
C.
B. ( )
1.
2. (Service)
Problem
Reason
3.
Tactical Modeling
A.
C.
B. ( )
1.
2. (Service)
Problem
Reason
3.
Tactical Modeling
Tactical Modeling
•
( )
• ( )
DDD
Tactical Modeling
•
•
•
•
•
•
•
•
•
•
•
Architecture
DDD
Tactical Modeling > (Architecture)
•
•
•
•
•
Tactical Modeling > (Architecture)
•
Tactical Modeling > (Architecture)
•
•
Tactical Modeling > (Architecture)
(Onion Architecture),
From 2008
• (
(Hexagonal Architecture),
From 2005
Clean Architecture),
From 2012
• (
Value Object
(Value Object)
Tactical Modeling > (Value Object)
?
Domain Driven Design - Tackling Complexity in the Heart of Software,
Eric Evans
(Value Object)
Tactical Modeling > (Value Object)
(Describe) (Measure)
Tactical Modeling > (Value Object)
(Describe) (Measure)
Tactical Modeling > (Value Object)
(Conceptual Whole)
•
•
•
•
•
Tactical Modeling > (Value Object)
(Conceptual Whole)
) (
Tactical Modeling > (Value Object)
) (
Tactical Modeling > (Value Object)
-
QA 100
-
Tactical Modeling > (Value Object)
-
-
-
Tactical Modeling > (Value Object)
= -
Tactical Modeling > (Value Object)
- =
Tactical Modeling > (Value Object)
•
•
-
Tactical Modeling > (Value Object)
-
-
Tactical Modeling > (Value Object)
-
Tactical Modeling > (Value Object)
Setter Method (immutable)
only getter
Tactical Modeling > (Value Object)
Tactical Modeling > (Value Object)
) Side-Effect Free
Tactical Modeling > (Value Object)
(
)
(
Side-Effect Free
Tactical Modeling > (Value Object)
(
) Method
Tactical Modeling > (Value Object)
•
•
•
•
(Entity)
Entity
(Entity) ?
Tactical Modeling > (Entity)
Domain Driven Design - Tackling Complexity in the Heart of Software,
Eric Evans
ID
Ticket number
Tactical Modeling > (Entity)
1 30
Tactical Modeling > (Entity)
(Entity)
1. ) (
3. ( (
Identity
2.
e.g.
Tactical Modeling > (Entity)
0 vs
1
Tactical Modeling > (Entity)
0 vs
1
Tactical Modeling > (Entity)
ID
Tactical Modeling > (Entity)
ID
•
Tactical Modeling > (Entity)
ID(int, string …)
•
•
•
•
• getter / setter
•
Tactical Modeling > (Entity)
•
Tactical Modeling > (Entity)
Table SchemaDomain Model
(Aggregate)
(Aggregate) ?
Tactical Modeling > (Aggregate)
Domain Driven Design - Tackling Complexity in the Heart of Software,
Eric Evans
(Aggregate) ?
Tactical Modeling > (Aggregate)
Tactical Modeling > (Aggregate)
Tactical Modeling > (Aggregate)
Tactical Modeling > (Aggregate)
PS:
Tactical Modeling > (Aggregate)
3
( ) 3 .
12 Bug .
1
Tactical Modeling > (Aggregate)
4 3
2 Bug 3
3 ) . (
Tactical Modeling > (Aggregate)
OrderItem
Update
Update Update
Tactical Modeling > (Aggregate)
Order 250
Tracy
Mary
Tactical Modeling > (Aggregate)
Tactical Modeling > (Aggregate)
Order 250
Tactical Modeling > (Aggregate)
Order ) 250 (
(Aggregate)
Tactical Modeling > (Aggregate)
•
(Aggregate)
Tactical Modeling > (Aggregate)
•
(Entity) (Value Object)
(Aggregate)
Tactical Modeling > (Aggregate)
•
(Aggregate) (
Tactical Modeling > (Aggregate)
• Business rule
) (
•
•
• 0
•
•
• x
(Aggregate)
Tactical Modeling > (Aggregate)
•
• (Transaction)
(Aggregate)
Tactical Modeling > (Aggregate)
• (Aggregate Root)
•
(Aggregate)
Tactical Modeling > (Aggregate)
• (Entity)
•
•
•
•
•
(Aggregate)
Tactical Modeling > (Aggregate)
• (Entity)
•
•
•
•
•
(Aggregate)
Tactical Modeling > (Aggregate)
•
•
(Aggregate)
Tactical Modeling > (Aggregate)
•
•
(Aggregate) ) (
Tactical Modeling > (Aggregate)
•
(Aggregate)
Tactical Modeling > (Aggregate)
(Aggregate)
Tactical Modeling > (Aggregate)
ID
(Factory)
(Factory) DDD
Tactical Modeling > (Factory)
•
Tactical Modeling > (Factory)
• Factory Method Abstract Factory Builder
•
•
Car altis = Car.StartToManufacture() v.s Car altis = Car.Create()
Client Factory Car
Aggregate Root
Create
manufacture
car
Tactical Modeling > (Factory)
•
•
•
•
Tactical Modeling > (Factory)
•
•
•
•
•
(Repository)
(Repository)
Tactical Modeling > (Repository)
• CRUD
•
•
• (1:1 1: N)
(Repository)
Tactical Modeling > (Repository)
DDD
(Repository) ?
Tactical Modeling > (Repository)
Domain Driven Design - Tackling Complexity in the Heart of Software,
Eric Evans
DDD (Repository)
Tactical Modeling > (Repository)
•
•
•
• CRUD
Tactical Modeling > (Repository)
• (1:1 1: N) ?
• E.g : Order, OrderItem OrderRepository OrderItemRepository
• Order OrderItem
• OrderItem Order
• OrderItem Order
Tactical Modeling > (Repository)
•
•
• (1:1 1: N) ?
• E.g : Order, OrderItem OrderRepository OrderItemRepository
• Order OrderItem
• OrderItem Order
• OrderItem Order
Tactical Modeling > (Repository)
• client
Insert Update Delete Query
Client
Tactical Modeling > (Repository)
•
• txt
•
Tactical Modeling > (Repository)
•
• Application Service
• Session Unit Of Work Commit
(Domain Service)
Tactical Modeling > (Domain Service)
•
A B
A Account B Account
•
Tactical Modeling > (Domain Service)
•
A B
A Account B Account N’s Order Record
• .
(Domain Service)
Tactical Modeling > (Domain Service)
•
•
•
•
•
•
•
(Domain Service)
Tactical Modeling > (Domain Service)
•
•
•
•
•
•
(Domain Service)
Tactical Modeling > (Domain Service)
• ( Bounded Context
• )
(Application Service)
(Application Service)
Tactical Modeling > (Application Service)
• Client Use Case)
•
• Client Input Output
•
•
•
• (
(Application Service)
Tactical Modeling > (Application Service)
•
•
Tactical Modeling > (Application Service)
(Domain Event)
(Domain Event)
Tactical Modeling > (Domain Event)
Domain-Driven Design Reference - Definitions and Pattern Summaries,
Eric Evans
(Domain Event)
Tactical Modeling > (Domain Event)
•
•
• Order Created
•
(Create Order) (Order Created)
(Domain Event) ?
Tactical Modeling > (Domain Event)
•
•
•
•
•
•
(Domain Event) ?
Tactical Modeling > (Domain Event)
•
•
•
•
•
•
•
(Domain Event)
Tactical Modeling > (Domain Event)
•
•
•
(Domain Event)
Tactical Modeling > (Domain Event)
• (immutable)
.
•
(primitive value)
• metadata
•
ID
(Domain Event)
- Tactical Modeling > (Domain Event)
•
•
(Module)
(Module)
Tactical Modeling > (Module)
•
. (Module)
Tactical Modeling > (Module)
• ) . .
•
• ) (
• .
•
app, controller, model, db, service
DDD (Module)
Tactical Modeling > (Module)
•
•
• (CCP)
•
•
DDD (Module) (1)
Tactical Modeling > (Module)
1.
2.
•
• Bounded Context
•
DDD (Module) (2)
Tactical Modeling > (Module)
3. domain
• models
• services
• repositories
• factories
4. models
• events
• exceptions
Take Away
Tactical Modeling > Take Away
• DDD
• DDD pattern language
•
• DDD
•
DDD 拼圖中的另一半 – 以戰術實踐代碼

Weitere ähnliche Inhalte

Was ist angesagt?

イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
 
你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發
志龍 陳
 
私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由
増田 亨
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
増田 亨
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメYoji Kanno
 
テストを書こう、Unity編
テストを書こう、Unity編テストを書こう、Unity編
テストを書こう、Unity編
Hiroto Imoto
 
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
teddysoft
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
 
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」 DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
Koichiro Matsuoka
 
幾何コンテスト2013
幾何コンテスト2013幾何コンテスト2013
幾何コンテスト2013Naoto Mizuno
 
これからの「async/await」の話をしよう
これからの「async/await」の話をしようこれからの「async/await」の話をしよう
これからの「async/await」の話をしよう
Kouji Matsui
 
Tableauダッシュボードのパフォーマンスベストプラクティス
TableauダッシュボードのパフォーマンスベストプラクティスTableauダッシュボードのパフォーマンスベストプラクティス
Tableauダッシュボードのパフォーマンスベストプラクティス
K T
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とは
Yusuke Suzuki
 
Epipolar Geometri Görüntü Oluşumu
Epipolar Geometri Görüntü OluşumuEpipolar Geometri Görüntü Oluşumu
Epipolar Geometri Görüntü Oluşumu
Ahmet Sancak Şanlı
 
効果的なスプリントプランニングのトライ
効果的なスプリントプランニングのトライ効果的なスプリントプランニングのトライ
効果的なスプリントプランニングのトライ
貴明 今井
 
Stop Retrospective, Start Continuous Improving
Stop Retrospective, Start Continuous ImprovingStop Retrospective, Start Continuous Improving
Stop Retrospective, Start Continuous Improving
Jen-Chieh Ko
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門
Takuya Kitamura
 
微服務對IT人員的衝擊
微服務對IT人員的衝擊微服務對IT人員的衝擊
微服務對IT人員的衝擊
Philip Zheng
 
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
 

Was ist angesagt? (20)

イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
 
你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發你所不知道的 DDD - 文件驅動開發
你所不知道的 DDD - 文件驅動開發
 
私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
 
テストを書こう、Unity編
テストを書こう、Unity編テストを書こう、Unity編
テストを書こう、Unity編
 
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」 DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
 
幾何コンテスト2013
幾何コンテスト2013幾何コンテスト2013
幾何コンテスト2013
 
これからの「async/await」の話をしよう
これからの「async/await」の話をしようこれからの「async/await」の話をしよう
これからの「async/await」の話をしよう
 
Tableauダッシュボードのパフォーマンスベストプラクティス
TableauダッシュボードのパフォーマンスベストプラクティスTableauダッシュボードのパフォーマンスベストプラクティス
Tableauダッシュボードのパフォーマンスベストプラクティス
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とは
 
Epipolar Geometri Görüntü Oluşumu
Epipolar Geometri Görüntü OluşumuEpipolar Geometri Görüntü Oluşumu
Epipolar Geometri Görüntü Oluşumu
 
効果的なスプリントプランニングのトライ
効果的なスプリントプランニングのトライ効果的なスプリントプランニングのトライ
効果的なスプリントプランニングのトライ
 
Stop Retrospective, Start Continuous Improving
Stop Retrospective, Start Continuous ImprovingStop Retrospective, Start Continuous Improving
Stop Retrospective, Start Continuous Improving
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門
 
微服務對IT人員的衝擊
微服務對IT人員的衝擊微服務對IT人員的衝擊
微服務對IT人員的衝擊
 
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
 

Ähnlich wie DDD 拼圖中的另一半 – 以戰術實踐代碼

[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
Eason Kuo
 
Golang in TiDB (GopherChina 2017)
Golang in TiDB  (GopherChina 2017)Golang in TiDB  (GopherChina 2017)
Golang in TiDB (GopherChina 2017)
PingCAP
 
The internals of Spark SQL Joins, Dmytro Popovich
The internals of Spark SQL Joins, Dmytro PopovichThe internals of Spark SQL Joins, Dmytro Popovich
The internals of Spark SQL Joins, Dmytro Popovich
Sigma Software
 
หน่วยที่ 7
หน่วยที่ 7หน่วยที่ 7
หน่วยที่ 7
somdetpittayakom school
 
System analyst and design
System analyst and designSystem analyst and design
System analyst and design
Chakrit Kulkaisri
 
Grill at bigdata-cloud conf
Grill at bigdata-cloud confGrill at bigdata-cloud conf
Grill at bigdata-cloud conf
amarsri
 
CM NCCU Class2
CM NCCU Class2CM NCCU Class2
CM NCCU Class2
志明 陳
 
Metaprogramming
MetaprogrammingMetaprogramming
Metaprogramming
Dmitri Nesteruk
 
Stream-based Data Synchronization
Stream-based Data SynchronizationStream-based Data Synchronization
Stream-based Data Synchronization
Klemen Verdnik
 
Embedded SW Interview Questions
Embedded SW Interview Questions Embedded SW Interview Questions
Embedded SW Interview Questions
PiTechnologies
 
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDTEclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
Elena Laskavaia
 
從行動廣告大數據觀點談 Big data 20150916
從行動廣告大數據觀點談 Big data   20150916從行動廣告大數據觀點談 Big data   20150916
從行動廣告大數據觀點談 Big data 20150916
Craig Chao
 
Cross platform Mobile development on Titanium
Cross platform Mobile development on TitaniumCross platform Mobile development on Titanium
Cross platform Mobile development on Titanium
Yiguang Hu
 
Big datacourse
Big datacourseBig datacourse
Big datacourse
Massimiliano Ruocco
 
lecture1.ppt
lecture1.pptlecture1.ppt
lecture1.ppt
SagarDR5
 
C++ Notes PPT.ppt
C++ Notes PPT.pptC++ Notes PPT.ppt
C++ Notes PPT.ppt
Alpha474815
 
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
ITCamp
 
Facility layout
Facility layoutFacility layout
Facility layout
Hilal Pv
 
Facility layout
Facility layoutFacility layout
Facility layout
Đán Lê
 
Facility layout
Facility layoutFacility layout
Facility layout
Maria Ceejee
 

Ähnlich wie DDD 拼圖中的另一半 – 以戰術實踐代碼 (20)

[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
[2020 DDD TW Conference Workshop] Go Ahead DDD Tactical Modeling
 
Golang in TiDB (GopherChina 2017)
Golang in TiDB  (GopherChina 2017)Golang in TiDB  (GopherChina 2017)
Golang in TiDB (GopherChina 2017)
 
The internals of Spark SQL Joins, Dmytro Popovich
The internals of Spark SQL Joins, Dmytro PopovichThe internals of Spark SQL Joins, Dmytro Popovich
The internals of Spark SQL Joins, Dmytro Popovich
 
หน่วยที่ 7
หน่วยที่ 7หน่วยที่ 7
หน่วยที่ 7
 
System analyst and design
System analyst and designSystem analyst and design
System analyst and design
 
Grill at bigdata-cloud conf
Grill at bigdata-cloud confGrill at bigdata-cloud conf
Grill at bigdata-cloud conf
 
CM NCCU Class2
CM NCCU Class2CM NCCU Class2
CM NCCU Class2
 
Metaprogramming
MetaprogrammingMetaprogramming
Metaprogramming
 
Stream-based Data Synchronization
Stream-based Data SynchronizationStream-based Data Synchronization
Stream-based Data Synchronization
 
Embedded SW Interview Questions
Embedded SW Interview Questions Embedded SW Interview Questions
Embedded SW Interview Questions
 
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDTEclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
Eclipse Con 2015: Codan - a C/C++ Code Analysis Framework for CDT
 
從行動廣告大數據觀點談 Big data 20150916
從行動廣告大數據觀點談 Big data   20150916從行動廣告大數據觀點談 Big data   20150916
從行動廣告大數據觀點談 Big data 20150916
 
Cross platform Mobile development on Titanium
Cross platform Mobile development on TitaniumCross platform Mobile development on Titanium
Cross platform Mobile development on Titanium
 
Big datacourse
Big datacourseBig datacourse
Big datacourse
 
lecture1.ppt
lecture1.pptlecture1.ppt
lecture1.ppt
 
C++ Notes PPT.ppt
C++ Notes PPT.pptC++ Notes PPT.ppt
C++ Notes PPT.ppt
 
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
Migrating from eRoom to SharePoint, A Success Story (Valy Greavu)
 
Facility layout
Facility layoutFacility layout
Facility layout
 
Facility layout
Facility layoutFacility layout
Facility layout
 
Facility layout
Facility layoutFacility layout
Facility layout
 

Mehr von Eason Kuo

Working effectively with legacy code study group - ch12,13,14
Working effectively with legacy code study group -  ch12,13,14Working effectively with legacy code study group -  ch12,13,14
Working effectively with legacy code study group - ch12,13,14
Eason Kuo
 
IDDD Ch.09 Module
IDDD Ch.09 ModuleIDDD Ch.09 Module
IDDD Ch.09 Module
Eason Kuo
 
IDDD Ch.08 Domain Event
IDDD Ch.08 Domain EventIDDD Ch.08 Domain Event
IDDD Ch.08 Domain Event
Eason Kuo
 
DDD Reading Club Sharing Ch. 6 Value Object
DDD Reading Club SharingCh. 6 Value ObjectDDD Reading Club SharingCh. 6 Value Object
DDD Reading Club Sharing Ch. 6 Value Object
Eason Kuo
 
2016 - What should we do in Startup
2016 - What should we do in Startup2016 - What should we do in Startup
2016 - What should we do in Startup
Eason Kuo
 
20140904 - ADRMS 介紹 - 企業文件版本權管理
20140904 - ADRMS 介紹 - 企業文件版本權管理20140904 - ADRMS 介紹 - 企業文件版本權管理
20140904 - ADRMS 介紹 - 企業文件版本權管理
Eason Kuo
 
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
Eason Kuo
 
2012/05/07 - Kinect Senor Development Introduction
2012/05/07 - Kinect Senor Development Introduction2012/05/07 - Kinect Senor Development Introduction
2012/05/07 - Kinect Senor Development Introduction
Eason Kuo
 
Windows 8 介紹與 Windows 8 App 開發概觀
Windows 8 介紹與 Windows 8 App 開發概觀Windows 8 介紹與 Windows 8 App 開發概觀
Windows 8 介紹與 Windows 8 App 開發概觀
Eason Kuo
 
分享擔任第八屆微軟學生大使的過程與經驗
分享擔任第八屆微軟學生大使的過程與經驗分享擔任第八屆微軟學生大使的過程與經驗
分享擔任第八屆微軟學生大使的過程與經驗
Eason Kuo
 
招募第九屆微軟學生大使 - 第三階段的專案競賽規則
招募第九屆微軟學生大使 - 第三階段的專案競賽規則招募第九屆微軟學生大使 - 第三階段的專案競賽規則
招募第九屆微軟學生大使 - 第三階段的專案競賽規則
Eason Kuo
 
Windows Phone 7 on Visual Studio 2010
Windows Phone 7 on Visual Studio 2010Windows Phone 7 on Visual Studio 2010
Windows Phone 7 on Visual Studio 2010
Eason Kuo
 
Windows Phone Survey on Game Development
Windows Phone Survey on Game DevelopmentWindows Phone Survey on Game Development
Windows Phone Survey on Game Development
Eason Kuo
 
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
Eason Kuo
 
視界 - 微客志工師大Wake分享會
視界 -  微客志工師大Wake分享會視界 -  微客志工師大Wake分享會
視界 - 微客志工師大Wake分享會
Eason Kuo
 
微客志工 - 533T 菲去cebu 熱血服霧
微客志工 - 533T 菲去cebu 熱血服霧微客志工 - 533T 菲去cebu 熱血服霧
微客志工 - 533T 菲去cebu 熱血服霧
Eason Kuo
 

Mehr von Eason Kuo (16)

Working effectively with legacy code study group - ch12,13,14
Working effectively with legacy code study group -  ch12,13,14Working effectively with legacy code study group -  ch12,13,14
Working effectively with legacy code study group - ch12,13,14
 
IDDD Ch.09 Module
IDDD Ch.09 ModuleIDDD Ch.09 Module
IDDD Ch.09 Module
 
IDDD Ch.08 Domain Event
IDDD Ch.08 Domain EventIDDD Ch.08 Domain Event
IDDD Ch.08 Domain Event
 
DDD Reading Club Sharing Ch. 6 Value Object
DDD Reading Club SharingCh. 6 Value ObjectDDD Reading Club SharingCh. 6 Value Object
DDD Reading Club Sharing Ch. 6 Value Object
 
2016 - What should we do in Startup
2016 - What should we do in Startup2016 - What should we do in Startup
2016 - What should we do in Startup
 
20140904 - ADRMS 介紹 - 企業文件版本權管理
20140904 - ADRMS 介紹 - 企業文件版本權管理20140904 - ADRMS 介紹 - 企業文件版本權管理
20140904 - ADRMS 介紹 - 企業文件版本權管理
 
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
 
2012/05/07 - Kinect Senor Development Introduction
2012/05/07 - Kinect Senor Development Introduction2012/05/07 - Kinect Senor Development Introduction
2012/05/07 - Kinect Senor Development Introduction
 
Windows 8 介紹與 Windows 8 App 開發概觀
Windows 8 介紹與 Windows 8 App 開發概觀Windows 8 介紹與 Windows 8 App 開發概觀
Windows 8 介紹與 Windows 8 App 開發概觀
 
分享擔任第八屆微軟學生大使的過程與經驗
分享擔任第八屆微軟學生大使的過程與經驗分享擔任第八屆微軟學生大使的過程與經驗
分享擔任第八屆微軟學生大使的過程與經驗
 
招募第九屆微軟學生大使 - 第三階段的專案競賽規則
招募第九屆微軟學生大使 - 第三階段的專案競賽規則招募第九屆微軟學生大使 - 第三階段的專案競賽規則
招募第九屆微軟學生大使 - 第三階段的專案競賽規則
 
Windows Phone 7 on Visual Studio 2010
Windows Phone 7 on Visual Studio 2010Windows Phone 7 on Visual Studio 2010
Windows Phone 7 on Visual Studio 2010
 
Windows Phone Survey on Game Development
Windows Phone Survey on Game DevelopmentWindows Phone Survey on Game Development
Windows Phone Survey on Game Development
 
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
Implementing Domain-Driven Design (Study Group) Chapter 3 - Context Maps
 
視界 - 微客志工師大Wake分享會
視界 -  微客志工師大Wake分享會視界 -  微客志工師大Wake分享會
視界 - 微客志工師大Wake分享會
 
微客志工 - 533T 菲去cebu 熱血服霧
微客志工 - 533T 菲去cebu 熱血服霧微客志工 - 533T 菲去cebu 熱血服霧
微客志工 - 533T 菲去cebu 熱血服霧
 

Kürzlich hochgeladen

Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 

Kürzlich hochgeladen (20)

Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 

DDD 拼圖中的另一半 – 以戰術實踐代碼