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 BoundedContext
Search
petitviolet
November 22, 2017
Programming
1
130
DDD BoundedContext
What is `Bounded Context` in Domain Driven Design(DDD)
petitviolet
November 22, 2017
Tweet
Share
More Decks by petitviolet
See All by petitviolet
Stripeで請求書払い&銀行振込を実装する
petitviolet
0
1.5k
ピュアなドメインを支える技術/pure domain model and the technology behind it
petitviolet
14
10k
小さく始めるクラウドネイティブ/small start CloudNative
petitviolet
0
1.9k
2019年だからこそ12factor app/The Twelve-Factor app in 2019
petitviolet
1
1k
実践GraphQL on Scala/Real world GraphQL on Scala
petitviolet
8
3.1k
Kubernetesを知る/Introduction Kubernertes
petitviolet
1
640
GraphQL on Scala
petitviolet
3
2.7k
Microservices Batch on GAE
petitviolet
0
1.9k
Web API Design
petitviolet
18
8.4k
Other Decks in Programming
See All in Programming
AIネイティブなプロダクトをGolangで挑む取り組み
nmatsumoto4
0
120
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
複数アプリケーションを育てていくための共通化戦略
irof
10
4k
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
2
650
XP, Testing and ninja testing
m_seki
2
140
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
150
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
250
F#で自在につくる静的ブログサイト - 関数型まつり2025
pizzacat83
0
310
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
800
Effect の双対、Coeffect
yukikurage
5
1.4k
Is Xcode slowly dying out in 2025?
uetyo
1
180
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
410
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Adopting Sorbet at Scale
ufuk
77
9.4k
Building an army of robots
kneath
306
45k
A designer walks into a library…
pauljervisheath
206
24k
A Tale of Four Properties
chriscoyier
160
23k
Done Done
chrislema
184
16k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
RailsConf 2023
tenderlove
30
1.1k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Transcript
#PVOEFE$POUFYU ࠶ೖ !QFUJUWJPMFU
͓͠ͳ͕͖ w #PVOEFE$POUFYUͬͯͳʹ w Կ͕خ͍͠ʁ w #PVOEFE$POUFYUͷΓํ w ྫ͑ w
$POUFYUͷ౷߹ w ·ͱΊ
#PVOEFE$POUFYU ͬͯͳʹʁ
ఆٛͨ͠Ϟσϧ͕ ద༻͞ΕΔείʔϓ
#PVOEFE$POUFYUͱ w ఆٛͨ͠Ϟσϧ͕ద༻͞ΕΔείʔϓ w ϞσϧͷதʹͦͷϞσϧͷ֓೦ɺϧʔϧɺ ϢϏΩλεݴޠؚ͕·Ε͍ͯΔ w ผͷ$POUFYUʹ͓͍ͯద༻͞Εͳ͍ w $POUFYUͰϞσϧݫີʹҰ؏ੑΛอͭ
#PVOEFE$POUFYU Կ͕خ͍͠ʁ
͍είʔϓͰϞσϧΛద༻ WT ڱ͍είʔϓͰϞσϧΛద༻
͍είʔϓͰϞσϧΛద༻ WT ڱ͍είʔϓͰϞσϧΛద༻ ͲͪΒ͕ɺϞσϧ͕໌֬ʹͳΔ͔ ͲͪΒ͕ɺҰ؏ੑΛอ͍͔ͪ͢
#PVOEFE$POUFYUԿ͕خ͍͠ʁ w ʮ$POUFYUʯͱ͍͏ڥքΛҾ͘͜ͱʹΑͬͯɺԿ ʹҰ؏ੑΛ࣋ͨͤΔ͖Ͱ͋Δͷ͔͕໌֬ʹͳΔ w ࣗ༝ͳੈքΑΓదͳ੍ w ֎෦ͷ$POUFYUʹҙࣝΛ͚Δඞཁ͕ͳ͘ͳΓɺ ϞσϧΛ७ਮʹอͭ͜ͱ͕ग़དྷΔ
#PVOEFE$POUFYUԿ͕خ͍͠ʁ w $POUFYUͷଘࡏͰΤϯδχΞͷ͕࢟มΘΔʁ w Ϟσϧ͕ద༻͞ΕΔείʔϓ͕ڱ·Δ w Ұ؏ੑΛอ͖ͭείʔϓڱ·Δ w ڱ͍είʔϓ͔ͩΒͦ͜ݫີʹकΔ
#PVOEFE$POUFYU ͷΓํ
ͲΜͳ୯ҐͰΕ͍͍ʁ ΤϯςΟςΟԿݸ͘Β͍ʁ
ਖ਼ղͳ͍
ϢϏΩλεݴޠʹͳ͍Α͏ͳ֓೦Λ ϞσϧʹऔΓࠐΜͩΓɺ ͋Δ͍େࣄͳ֓೦Λ֎ʹग़ͨ͠Γ ͠ͳ͍Α͏ʹؾΛ͚Α͏ɻ
Ͳ͏ͬͯ#PVOEFE$POUFYUΛΔ͔ w ཧతʹΘ͚Δ w νʔϜฤ w ίʔυϕʔε w σʔλϕʔεεΩʔϚ w
FUD w $POUFYUࣗʹϢϏΩλεͳ໊લΛ͚ͭΔ w ଞͷ$POUFYUͱ໌֬ʹ۠ผ͢Δ
ͨͱ͑ ग़൛ࣾͷۀ
ग़൛ࣾͷۀ ॻ੶ͷ༰ΛҊͱͯ͠·ͱΊɺىҊ͢Δ ஶऀͱग़൛ܖΛ݁Ϳ ॻ੶ͷࣥචͱฤूͷϓϩηεΛཧ͢Δ ॻ੶ͷஸૠֆΛσβΠϯ͢Δ ॻ੶Λଞͷݴޠʹ༁͢Δ ࢴͷॻ੶ిࢠ൛Λ࡞͢Δ ॻ੶Λએ͢Δ ॻ੶Λ࠶ൢۀऀʹൢച͢Δ ࢴͷॻ੶Λ࠶ൢۀऀސ٬ʹग़ՙ͢Δ
ग़൛ࣾͷۀ ॻ੶ͷ༰ΛҊͱͯ͠·ͱΊɺىҊ͢Δ ஶऀͱग़൛ܖΛ݁Ϳ ॻ੶ͷࣥචͱฤूͷϓϩηεΛཧ͢Δ ॻ੶ͷஸૠֆΛσβΠϯ͢Δ ॻ੶Λଞͷݴޠʹ༁͢Δ ࢴͷॻ੶ిࢠ൛Λ࡞͢Δ ॻ੶Λએ͢Δ ॻ੶Λ࠶ൢۀऀʹൢച͢Δ ࢴͷॻ੶Λ࠶ൢۀऀސ٬ʹग़ՙ͢Δ
શͯผͷ$POUFYU
ग़൛ࣾͷۀ ॻ੶ͷ༰ΛҊͱͯ͠·ͱΊɺىҊ͢Δ ஶऀͱग़൛ܖΛ݁Ϳ ॻ੶ͷࣥචͱฤूͷϓϩηεΛཧ͢Δ ॻ੶ͷஸૠֆΛσβΠϯ͢Δ ॻ੶Λଞͷݴޠʹ༁͢Δ ࢴͷॻ੶ిࢠ൛Λ࡞͢Δ ॻ੶Λએ͢Δ ॻ੶Λ࠶ൢۀऀʹൢച͢Δ ࢴͷॻ੶Λ࠶ൢۀऀސ٬ʹग़ՙ͢Δ
ग़൛ࣾͷۀ ॻ੶ͷ༰ΛҊͱͯ͠·ͱΊɺىҊ͢Δ ஶऀͱग़൛ܖΛ݁Ϳ ॻ੶ͷࣥචͱฤूͷϓϩηεΛཧ͢Δ ॻ੶ͷஸૠֆΛσβΠϯ͢Δ ॻ੶Λଞͷݴޠʹ༁͢Δ ࢴͷॻ੶ిࢠ൛Λ࡞͢Δ ॻ੶Λએ͢Δ ॻ੶Λ࠶ൢۀऀʹൢച͢Δ ࢴͷॻ੶Λ࠶ൢۀऀސ٬ʹग़ՙ͢Δ
ʮॻ੶ʯ શ෦ಉ͡ͷʁ
ग़൛ࣾͷۀ w ʮॻ੶ʯ w ಉ͡ݴ༿͚ͩͲಉ͡ͷͰͳ͍ w ֤$POUFYUʹ͓͍ͯఆ͕ٛҧ͏ w ࣥචϓϩηεͷॻ੶ w
ߘɺίϝϯτɺߍਖ਼ɺFUD w ग़ՙϓϩηεͷॻ੶ w ݿͷҐஔɺࡏݿɺαΠζɺFUD w ಉࣝ͡ผࢠΛڞ༗ͯ͠Մೳʹ͢Δ͕ɺ ֤$POUFYUʹ͓͚Δʮॻ੶ʯΛද͢ϞσϧҟͳΔ
$POUFYUͷ౷߹
$POUFYUͷ౷߹ w #PVOEFE$POUFYUͰۀΛΓ͚ͨ w ͡Ό͋Ͳ͏ͬͯ࿈ܞ͢Δ͔ w ίϯςΩετϚοϓ w ౷߹ύλʔϯ
ίϯςΩετϚοϓ
ίϯςΩετϚοϓ w ϓϩδΣΫτʹؔΘΔڥք͚ΒΕͨίϯςΩε τͱͦΕΒͷ౷߹ؔΛࣔ͢ͷ w طଘͷγεςϜͷશΛѲͰ͖Δ w ίϛϡχέʔγϣϯ͕ඞཁͳνʔϜΛಛఆ͢Δ w 6QTUSFBN%PXOTUSFBN
w ্ྲྀԼྲྀ
$POUFYU౷߹ύλʔϯ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ޭࣦഊͷӡ໋Λڞʹ͢Δ νʔϜؒͰڠྗؔΛங͘ඞཁ͕͋Δ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ίϯςΩετ͕ͭɻҎ্ɻ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ͭͷίϯςΩετΛ ෳͷίϯςΩετ͕ࢀর
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ΞΫηε͢ΔͨΊͷ ϓϩτίϧΛެ։͢Δ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ্ྲྀͱԼྲྀʹΘ͔Εͯ Լྲྀͷ݁Ռʹ্ྲྀ͕ίϛοτ͢Δ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ্ྲྀͱԼྲྀʹΘ͔ΕΔ͕ Լྲ্ྀྲྀʹ߹ΘͤΔ͔͠ͳ͍
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ্ྲྀΛִ͢ΔͨΊͷ มΛ௨ͯ͠ Լྲ্ྀ͕ྲྀΛར༻͢Δ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ౷߹ఘΊΔ
$POUFYU౷߹ύλʔϯ w ύʔτφʔγοϓ w ୯ҰͷίϯςΩετ w ڞ༗Χʔωϧ w ެ։ϗεταʔϏε w
ސ٬ڙڅऀ w ॱԠऀ w ഊࢭ w ผʑͷಓ ౷߹ύλʔϯΛࢀߟʹ ίϯςΩετɾνʔϜͷؔΛ໌֬ʹͯ͠ ͏·͘࿈ܞ͍ͯ͘͜͠ͱ͕େࣄ
·ͱΊ
#PVOEFE$POUFYU ҰମͳΜͩͬͨͷ͔
#PVOEFE$POUFYUҰମͳΜͩͬͨͷ͔ w ఆٛ͢ΔϞσϧ͕ద༻͞ΕΔείʔϓ w ϞσϧΛΑΓ໌֬ʹ͢ΔͨΊ w ίϯςΩετϚοϓΛඳ͘ w શମΛ၆ᛌ͠ɺίϛϡχέʔγϣϯ͢Δ w
ίϯςΩετΛ౷߹͢Δ w Ͳ͏࿈ܞ͢Δ͔Λ໌Β͔ʹ
େنγεςϜ։ൃΛ νʔϜʹΘ͔Εͯ ࿈ܞ͍ͯͨ͘͠Ίͷ֓೦
֤νʔϜ Ϟσϧίϛϡχέʔγϣϯʹ͍ͭͯ ߟ͑Δ͜ͱ͕ݮΔ WT ཧతʹΘ͔ΕΔͷͰ ௐͱ͔σϓϩΠͱ͔ӡ༻ͱ͔Ͱ ߟ͑Δ͜ͱ͕૿͑Δ
None