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.2k
ピュアなドメインを支える技術/pure domain model and the technology behind it
petitviolet
14
9.9k
小さく始めるクラウドネイティブ/small start CloudNative
petitviolet
0
1.8k
2019年だからこそ12factor app/The Twelve-Factor app in 2019
petitviolet
1
980
実践GraphQL on Scala/Real world GraphQL on Scala
petitviolet
8
2.9k
Kubernetesを知る/Introduction Kubernertes
petitviolet
1
620
GraphQL on Scala
petitviolet
3
2.6k
Microservices Batch on GAE
petitviolet
0
1.9k
Web API Design
petitviolet
18
8.2k
Other Decks in Programming
See All in Programming
DMMオンラインサロンアプリのSwift化
hayatan
0
170
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
290
ErdMap: Thinking about a map for Rails applications
makicamel
1
580
Package Traits
ikesyo
1
210
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.3k
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
5.9k
2025.01.17_Sansan × DMM.swift
riofujimon
2
530
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
140
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
370
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
7
1.4k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Six Lessons from altMBA
skipperchong
27
3.6k
Scaling GitHub
holman
459
140k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
A Tale of Four Properties
chriscoyier
157
23k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
GitHub's CSS Performance
jonrohan
1030
460k
Building Your Own Lightsaber
phodgson
104
6.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
860
Docker and Python
trallard
43
3.2k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
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