Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DDD ユビキタス言語再考 / Rethink the ubiquitous language
Search
Yoshitaka Okuda
May 12, 2016
Programming
1
9.4k
DDD ユビキタス言語再考 / Rethink the ubiquitous language
社内LT用資料
なお、5分にはおさまらなかった模様...
補足を書きました。
http://yoskhdia.hatenablog.com/entry/2016/05/22/182605
Yoshitaka Okuda
May 12, 2016
Tweet
Share
More Decks by Yoshitaka Okuda
See All by Yoshitaka Okuda
明日からはじめられるEventStorming(イベントストーミング) / Let's try EventStorming
yoskhdia
11
7.5k
Event Storming and Narrative
yoskhdia
0
4.5k
Don't build framework, Build platform
yoskhdia
0
180
Reactive Messaging Patternsに学ぶシステム間統合
yoskhdia
2
320
より効果的な目標の立て方 / How to plan your effective experience
yoskhdia
1
910
ドメインイベントを設計する / Modeling the Domain Event
yoskhdia
6
9.5k
実務家のためのSQL / SQL for Beginers
yoskhdia
1
390
DDD + Clean Architecture + UCDOM Full版
yoskhdia
31
10k
DDD + Clean Architecture + UCDOM Essence版
yoskhdia
13
4.4k
Other Decks in Programming
See All in Programming
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
110
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
250
CloudNativePGを布教したい
nnaka2992
0
120
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
470
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.2k
TCAを用いたAmebaのリアーキテクチャ
dazy
0
210
sappoRo.R #12 初心者セッション
kosugitti
0
280
バッチを作らなきゃとなったときに考えること
irof
2
540
React 19アップデートのために必要なこと
uhyo
8
1.5k
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
390
良いコードレビューとは
danimal141
7
1.5k
読まないコードリーディング術
hisaju
0
110
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
328
21k
The Cult of Friendly URLs
andyhume
78
6.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Practical Orchestrator
shlominoach
186
10k
The Pragmatic Product Professional
lauravandoore
32
6.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Transcript
DDD ϢϏΩλεݴޠ࠶ߟ 2016/05/12 @yoskhdia ࣾLT
About me • ԞాՂڗʢYoshitaka Okudaʣ • גࣜձࣾSocketʢKDDI Syn.ϗʔϧσΟϯάεάϧʔϓʣ ΞʔΩςΫτ •
Twitter @yoskhdia • interested in DDD/Scala/C#/Reactive System/ Architect/System Thinking/Team Building/ Agile/ܦӦใֶ/On-Road Bike
࠷ۙͷ׆ಈ • DDD+CQRS+ESͷΑ͏ͳɺDDDΛϕʔεʹ ReactiveͳγεςϜΛษڧͨ͠Γ͍ͯ͠·͢ɻ
ϢϏΩλεݴޠ࠶ߟ վΊͯDDDຊୈ̎ষΛಡΉ
Α͋͘Δޡղ ʮϢϏΩλεݴޠʹϢʔβͷݴ༿ʯ
࣮ફ͢Δ·Ͱ ͦ͏ࢥ͍ͬͯ·ͨ͠… ॻ੶Λಡ·ͣʹωοτͷใʹཔΔͱؕΓ͍͢Α͏ͳʁ
ϢϏΩλεݴޠԿނඞཁʁ
–ॻ੶ʮυϝΠϯۦಈઃܭʯ(p.24) “͠ͳ͔Ͱࣝ๛ͳઃܭΛߦ͏ʹɺ ༻్ͷ෯͍ɺڞ༗͞ΕͨνʔϜͷݴޠ ͱɺͦͷݴ༿Λͬͨ׆ൃͳ࣮ݧ͕ඞཁ Ͱ͋Δɻ”
͡ΊͷҰจ ඥղ͘
Ϟσϧ • ͋Δʹରͯ͠ղܾࡦͷදݱ • ϞσϧཧղͷͨΊͷͷͳͷͰɺઃܭ͢Δ͏͑Ͱ Կʢଆ໘ʣΛϞσϧԽ͢Δ͔બ͢Δ ˠͳͥͳΒɺղܾࡦෳଘࡏ͢Δ • ϢʔβʢυϝΠϯΤΩεύʔτʣ։ൃऀಉ͡Ϟ σϧΛڞ༗͢Δ͜ͱ͕େࣄ
• ϞσϧΛڞ༗͠ଓ͚Δʹڧݻͳڞ௨ݴޠ͕ඞཁ
–ॻ੶ʮυϝΠϯۦಈઃܭʯ(p.26) “ϞσϧΛݴޠͷࠎ֨ͱͯ͠༻͢Δ͜ ͱɻʢதུʣݴޠΛ͏্Ͱ͕͋Ε ɺΘΓͷදݱΛ༻͍࣮ͯݧ͢Δ͜ͱ ͰɺΛऔΓআ͘͜ͱɻ”
DDDຊͷఆٛ • ͍ͭϞσϧ͕࠷ળͱݶΒͳ͍ • ۀ࣌ΛܦͯಘΔݟ͔Β৽͍͠ϞσϧΛൃ ݟ͢Δ͜ͱ͋Δ • Ϟσϧͷ͔֬͞Λݴޠͷෆࣗવ͔͞Βݕূ͢Δ • ͲΜͳͱ͖ڞ௨ݴޠΛ͏͜ͱͰࣗવͳؾ
͖ͮΛଅ͢
“υϝΠϯΤΩεύʔτɺυϝΠϯʹͭ ͍ͯͷཧղΛ͑Δʹ͍ʹ͔ͬͨ͘ ΓෆదͩͬͨΓ͢Δ༻ޠߏʹҟٞ Λএ͑Δ͖Ͱ͋Γɺ։ൃऀɺઃܭΛ ͢Δ͜ͱʹͳΔ͍͋·͍͞ෆ߹ ʹΛޫΒͤΔ͖Ͱ͋Δɻ” –ॻ੶ʮυϝΠϯۦಈઃܭʯ(p.27)
୭͠ࢥߟͷໃ६ᐆດ͞Λ ๊͍͑ͯΔɻ ࢧ͑߹͏ɻ
“·ͩϞσϧԽ͞Ε͍ͯͳ͍ػೳʹ͍ͭ ͯɺϢʔβ͕ٞ͢Δ࣌ʹɺ༻Ͱ͖ ΔϞσϧଘࡏ͠ͳ͍ɻ͔͠͠ɺ൴Β͕ ։ൃऀͱҰॹʹ৽͍͠ΞΠσΞΛݕ౼͠ ࢝ΊΔͱ͙͢ʹɺڞ༗͞ΕΔϞσϧ ͔͏ख୳Γͷϓϩηε͕։࢝͞ΕΔɻॳ Ί͗ͪ͜ͳͯ͘ෆશ͔͠Εͳ͍͕ɺ ࣍ୈʹվྑ͞Ε͍ͯ͘ɻ” –ॻ੶ʮυϝΠϯۦಈઃܭʯ(p.32)
ϞσϧΛ৭ʑࢼ͢ɺ Ϟσϧͱ֓೦Λ݁ͼ͚ͭͳ͕Βʹͯ͠ΈΔɺ ΑΓ؆୯ʹݴ͑Δํ๏Λݟ͚ͭΔɺ ͦͷ৽͍͠ߟ͑ํΛਤͱίʔυʹ࠶ͼө͢Δ
·ͱΊ • ϢϏΩλεݴޠνʔϜશһͰ߹ҙ͠Δͷ • ϢϏΩλεݴޠɺੳɾϞσϦϯάΛܦͯಘΔදग़ • Ͳ͜Ͱ͏ɻίʔυʹݶΒͣɺλεΫػೳΛهड़͢ΔͨΊʹ ΘΕͳ͚ΕͳΒͳ͍ɻগͳ͘ͱνʔϜͷ͋ΒΏΔ໘Ͱɻ • ϢϏΩλεݴޠɺઃܭʹ͋ͬͯίʔυʹݱΕͳ͍ଆ໘Λୡ͢Δ
ͨΊͷओཁͳखஈ(p.27) • ݴޠϞσϧΛ࣮ݧ͢Δɻ͜ͷϑΟʔυόοΫϧʔϓʹΑΓࣝ๛ ͳϞσϧΛݟ͚ͭग़͠ɺͦͷϞσϧΛৠཹͰ͖ΔΑ͏ʹͳΔɻ(p.14)