$30 off During Our Annual Pro Sale. View Details »
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
350
周回遅れを生き抜くためにやったこと
maoinstantlife
3
980
If You Want To Go Far, Go Together
maoinstantlife
3
630
マネージャのキャパシティを限界にしないチーム
maoinstantlife
1
460
ゼロからのプロダクトローンチで学んだこと
maoinstantlife
0
820
Other Decks in Technology
See All in Technology
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
360
AWS Security Agentの紹介/introducing-aws-security-agent
tomoki10
0
180
Databricks向けJupyter Kernelでデータサイエンティストの開発環境をAI-Readyにする / Data+AI World Tour Tokyo After Party
genda
1
110
技術以外の世界に『越境』しエンジニアとして進化を遂げる 〜Kotlinへの愛とDevHRとしての挑戦を添えて〜
subroh0508
1
440
Ruby で作る大規模イベントネットワーク構築・運用支援システム TTDB
taketo1113
1
280
30分であなたをOmniのファンにしてみせます~分析画面のクリック操作をそのままコード化できるAI-ReadyなBIツール~
sagara
0
130
世界最速級 memcached 互換サーバー作った
yasukata
0
340
Karate+Database RiderによるAPI自動テスト導入工数をCline+GitLab MCPを使って2割削減を目指す! / 20251206 Kazuki Takahashi
shift_evolve
PRO
1
720
WordPress は終わったのか ~今のWordPress の制作手法ってなにがあんねん?~ / Is WordPress Over? How We Build with WordPress Today
tbshiki
1
720
プロンプトやエージェントを自動的に作る方法
shibuiwilliam
0
740
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
830
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Building Applications with DynamoDB
mza
96
6.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Designing for humans not robots
tammielis
254
26k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Scaling GitHub
holman
464
140k
Principles of Awesome APIs and How to Build Them.
keavy
127
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ͰղܾͰ͖ͳ͍͜ͱ Զͷઃܭਖ਼͍͠ʁ ͜ΕΛಡΊ˓˓γεςϜઃܭͰ͖Δʁ ͜͏ɺͯΊΕਖ਼͍͠ઃܭʹͳΔͱ͔ɾɾɾ