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 Overview in 中国DB勉強会
Search
Shinsuke Abe
July 18, 2015
Technology
0
2.1k
DDD Overview in 中国DB勉強会
中国DB勉強会でハンズオンをする前に押さえておくDDDの概要です。
Shinsuke Abe
July 18, 2015
Tweet
Share
More Decks by Shinsuke Abe
See All by Shinsuke Abe
タスクの「終わり」は見えてますか?(Ver.JBUG広島)
maoinstantlife
2
330
周回遅れを生き抜くためにやったこと
maoinstantlife
3
940
If You Want To Go Far, Go Together
maoinstantlife
3
600
マネージャのキャパシティを限界にしないチーム
maoinstantlife
1
450
ゼロからのプロダクトローンチで学んだこと
maoinstantlife
0
800
Other Decks in Technology
See All in Technology
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.1k
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
610
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
330
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
140
【PHPカンファレンス 2025】PHPを愛するひとに伝えたい PHPとキャリアの話
tenshoku_draft
0
120
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
1
180
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
120
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
4
550
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
330
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
360
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
210
解析の定理証明実践@Lean 4
dec9ue
0
180
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
GitHub's CSS Performance
jonrohan
1031
460k
How to Ace a Technical Interview
jacobian
277
23k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
For a Future-Friendly Web
brad_frost
179
9.8k
Optimizing for Happiness
mojombo
379
70k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
DDD Overview in தࠃDBษڧձ Ѩ෦ ৴հ
ࣗݾհ Ѩ෦ ৴հ(@mao_instantlife) #Rࣾ νʔϜϦʔμʔ(≒雑⽤用係) ύλʔϯϥϯήʔδɺφϨοδϚωδϝϯτ ғޟɺ࢝Ί·ͨ͠
͜ͷηογϣϯͷత DDDΛಡΜͩ͜ͱͳ͍ਓʹ͚ͯɺ ֓ཁΛઆ໌͠ɺ ಡΉͨΊͷΤοηϯεΛཧղͯ͠Β͏͜ͱ
࣭ DDDͱ͍͏ݴ༿Λௌ͍ͨ͜ͱ͕ͳ͍ਓʁ DDD͕Կͷུ͔ͩΒͳ͍ਓʁ DDD͕όζͬͯΔ͔ΒؾʹͳΔਓʁ
ΞδΣϯμ 5ͰΘ͔ͬͨؾʹͳΔDDD ίΞυϝΠϯͱʁ Ϟσϧͱʁ ·ͱΊ
5ͰΘ͔ͬͨؾʹͳΔDDD
υϝΠϯۦಈઃܭ(ࠓ࢈ۀ) ઃܭΛਐΊΔͨΊͷΞϓϩʔν ιϑτΣΞϓϩδΣΫτͰ·ͣҙΛ͏͖ͳ ͷɺυϝΠϯͱυϝΠϯϩδοΫͰ͋Δ ෳࡶͳυϝΠϯͷઃܭϞσϧʹج͖ͮ͘Ͱ͋Δ
–Eric Evans(from υϝΠϯۦಈઃܭ) “ιϑτΣΞͷ֩৺ɺυϝΠϯʹؔ࿈ͨ͠ ΛϢʔβͷͨΊʹղܾ͢ΔೳྗͰ͋Δɻ”
ઃܭΛਐΊΔͨΊʹ ίΞυϝΠϯʹूத͢Δ υϝΠϯͷ࣮Ո(υϝΠϯΤΩεύʔτ)ͱιϑτ ΣΞͷ࣮Ո(։ൃऀ)͕ɺڠۀΛ௨ͯ͡ϞσϧΛ୳ ٻ͢Δ ໌֬ʹڥք͚ͮΒΕͨίϯςΩετͷதͰɺϢϏΩ λεݴޠʹΑͬͯձ͢Δ
ςΩετ ઃܭͰ͜ΕΛࢥ͍ු͔ͨਓɺΞτʔ Excelํ؟ࢴ
–Shinsuke Abe “ઃܭߦҝͰ͋ΓɺͦͷΞτϓοτߦҝʹج ͍ͮͨͰͳ͚ΕͳΒͳ͍”
ํ؟ࢴ͕ઃܭͰͳ͍ཧ༝ ߦҝͱΞτϓοτͷॱং͕ٯ Ξτϓοτʹنఆ͞Εͨߟ͑ํ Ξτϓοτʹ͋Θͳ͍ͷ͕ഉআ͞ΕΔՄೳੑ
ςΩετ ઃܭͱ͍͏ߦҝ
–Micheal Hunger “Ͳͷʹݴ͑Δ͜ͱͰ͕͢ɺઐՈͱ͍͏ͷ ɺৗੜ׆ͰΘΕΔݴ༿ͱશ͘ҟͳͬͨݴ ༿Λ͏ͷͰ͢ɻ”
ίΞυϝΠϯͱʁ
ίΞυϝΠϯ ରͱͳΔϏδωεͷࣝྖҬ ιϑτΣΞ͕ՁΛൃش͢Δॴ υϝΠϯΤΩεύʔτͱ։ൃऀ͕ڞ༗͖͢ͷ
ςΩετ ৠཷ ͔ࣝΒෆ७ΛऔΓআ͘ɻ
நԽ υϝΠϯΤΩεύʔτͷࣝߏ͕ର ΤϯδχΞͷಘҙ ࣝߏ͔Βݴ༿(ϢϏΩλεݴޠ)͕࢈·ΕΔ
ςΩετ ϨΠϠʔυΞʔΩςΫνϟ ίΞυϝΠϯʹूத͢ΔͨΊʹࣝͷྖҬΛ ʹ͢Δɻ
ؔ৺ͷ ϢʔβΠϯλʔϑΣΠε ΞϓϦέʔγϣϯ υϝΠϯ(Ϗδωεͷ֩৺) ΠϯϑϥετϥΫνϟ(ٕज़ج൫)
ςΩετ ؔ৺ͷ ࣝࠞ͟Γ߹͏ͱཧղΛ͛Δɻ Ϗδωεͱٕज़ͷ͚͍ࣝͨɻ
Ϟσϧͱʁ
ςΩετ Ϟσϧ ରͱͳΔࣝΛநԽͯ͠ߏԽ͢Δɻ
υϝΠϯϞσϧ υϝΠϯΤΩεύʔτͷࣝΛϞσϧԽ ྑ͍ϞσϧͱυϝΠϯʹಛԽͨ͠Ϟσϧ υϝΠϯΤΩεύʔτͱ։ൃऀͷཧղͷΑΓͲ͜Ζ ࣮ΛυϝΠϯϞσϧʹدͤΔ
Ϟσϧͷද͠ํ ΤϯςΟςΟ ΦϒδΣΫτ αʔϏε ूͱϑΝΫτϦ ϦϙδτϦ
ΤϯςΟςΟ ࿈ଓੑͱಉҰੑΛ࣋ͭ ಉҰੑ͕ॏཁࢹ͞ΕΔ ϥΠϑαΠΫϧΛ࣋ͭ ಉҰੑଐੑͰදͤΔ߹ͱidͰදͤΔ߹͕͋Δ ಉҰੑʹؔΘΔଐੑʹ͔ؔ͠৺͕ͳ͍
ΦϒδΣΫτ ଐੑ͕ॏཁࢹ͞ΕΔΦϒδΣΫτ ଐੑશ͕ͯҰக͢Εಉ͡ΦϒδΣΫτ
αʔϏε ΤϯςΟςΟʹΦϒδΣΫτʹϚον͠ͳ͍ ৼΔ͍ DDDతʹΤϯςΟςΟͱΦϒδΣΫτ͔ΒৼΔ ͍Λ͠ͳ͍
ूɺϑΝΫτϦ ΤϯςΟςΟɺΦϒδΣΫτෳͷΦϒδΣΫ τͰͻͱ·ͱ·Γʹཧղ͞ΕΔ͜ͱ͕͋Δ ֓೦ͷΈ߹ΘͤΛूͱݺͿ ͜ΕΒͷੜΛ·ͱΊͯϋϯυϦϯά͢Δͷ͕ϑΝ ΫτϦ
ϦϙδτϦ ӬଓԽ(ΠϯϑϥετϥΫνϟ)ͷΞΫηεΛΧ ϓηϧԽ͢Δ υϝΠϯʹΠϯϑϥετϥΫνϟ(۩ମతʹSQL ͳͲ)͕ݱΕͳ͍Α͏ʹ͢Δ υϝΠϯʹରͯ͠ෆࣗવʹͳΒͳ͍ݴ༿Ͱද͢
ςΩετ Ϟσϧ୳ࡧͷ͏ͣ·͖ ࣝͷநԽɺߏԽҰͰ͑ΔϞσϧʹ ͨͲΓண͚ͳ͍ɻ
ϞσϧͲ͏ॻ͘ʁ ϞσϧʹϦϑΝΫλϦϯά͕ඞཁ దٓॻ͖͑ΔͷͰखॻָ͖͕ حྷʹݟͤΔΑΓѻ͍͕͢͞େࣄ ݻ·͖ͬͯͨΒదٓਗ਼ॻ
·ͱΊ
DDDͰѻͬͯΔ͜ͱ ਖ਼͍͠։ൃͰʮԿʹʯूத͖͔͢ʁ ڞ௨ͷؔ৺͝ͱΛͲ͏ͬͯΓग़͔͢ʁ ؔ৺ͱͳΔࣝͷߏΛͲ͏ͬͯදͤྑ͍͔ʁ Ϟσϧͷ࣭ͷอͪํ
DDDͰղܾͰ͖ͳ͍͜ͱ Զͷઃܭਖ਼͍͠ʁ ͜ΕΛಡΊ˓˓γεςϜઃܭͰ͖Δʁ ͜͏ɺͯΊΕਖ਼͍͠ઃܭʹͳΔͱ͔ɾɾɾ