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
ドメイン駆動設計 第一部まとめ
Search
Go Tanaka
September 08, 2016
Programming
1
410
ドメイン駆動設計 第一部まとめ
エリックエヴァンスのDDD本の第一部のまとめ(感想)
Go Tanaka
September 08, 2016
Tweet
Share
More Decks by Go Tanaka
See All by Go Tanaka
事業を理解するために勉強したこと
tan_go238
0
1.3k
RDRAと業務と私
tan_go238
6
5.1k
エンジニアのための情報設計入門
tan_go238
10
7.8k
JVM in Action
tan_go238
1
630
Ordinary Object Pointer in JVM
tan_go238
5
6k
フロントエンドの基礎知識
tan_go238
28
10k
Reactive Microservices Architecture
tan_go238
0
240
たぶん便利なパターンマッチ
tan_go238
0
310
Other Decks in Programming
See All in Programming
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
12
2.6k
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
1
280
iOS開発スターターキットの作り方
akidon0000
0
250
Claude Codeで実装以外の開発フロー、どこまで自動化できるか?失敗と成功
ndadayo
2
140
エンジニアのための”最低限いい感じ”デザイン入門
shunshobon
0
110
実践!App Intents対応
yuukiw00w
1
280
オホーツクでコミュニティを立ち上げた理由―地方出身プログラマの挑戦 / TechRAMEN 2025 Conference
lemonade_37
2
470
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
9
680
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.7k
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
1.1k
Nuances on Kubernetes - RubyConf Taiwan 2025
envek
0
170
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Six Lessons from altMBA
skipperchong
28
4k
Building an army of robots
kneath
306
45k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
How GitHub (no longer) Works
holman
314
140k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Scaling GitHub
holman
462
140k
Making Projects Easy
brettharned
117
6.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Practical Orchestrator
shlominoach
190
11k
Optimizing for Happiness
mojombo
379
70k
Transcript
υϝΠϯۦಈઃܭ ୈ1෦·ͱΊ
ϞσϧͱԿ͔ • ໘ͷΛղܾ͢Δ্Ͱؔ࿈͢Δଆ໘ΛநԽ͠ɺɹ ͦΕҎ֎ͷཁૉΛແࢹͨ͠ݱ࣮ʹର͢Δͻͱͭͷղऍ • ιϑτΣΞͱ • ϢʔβͷԿΒ͔ͷ׆ಈؔ৺ࣄͱ͕ؔ͋Δ • Ϣʔβ͕ϓϩάϥϜΛద༻͢ΔྖҬ͕ιϑτΣΞ
ͷυϝΠϯ
ϞσϧͱԿ͔ ݱ࣮ੈք ׆ಈɾؔ৺ࣄ ׆ಈɾؔ৺ࣄ Ϟσϧ Ϟσϧ ؆ུԽɾநԽ ιϑτΣΞ ͷྖҬ
ϞσϦϯά • υϝΠϯϞσϦϯάͱϞσϧΛͰ͖Δ͚ͩ ʮ࣮ࣸతʹʯ࡞͢Δ͜ͱͰͳ͍ • ͋Δతʹैͬͯݱ࣮ͷ֓ཁΛදݱ͢Δ • ͜ͷ࡞ۀΛϞσϦϯάͱݺͿ
ͲͷΑ͏ʹϞσϧΛબ͢Δ͔ 1. Ϟσϧͱઃܭͷ֩৺͕૬ޓʹؔ࿈͠߹͏͜ͱ 2. νʔϜϝϯόશһ͕༻͢Δڞ௨ͷݴޠج൫Ͱ ͋Δ͜ͱ 3. ৠཹ͞ΕͨࣝͰ͋Δ͜ͱ
Ͳ͔͜Β࢝ΊΔ͔ʁ • ࣝΛ͔Έࡅ͘ͱ͜Ζ͔Β ”ΫϥΠΞϯτυϝΠϯΤΩεύʔτͱҰॹʹ͠߹͍ͳ͕Β ΦϒδΣΫτͷ૬ޓ࡞༻ਤΛඳ͍ͨΓͨ͠” ”༻ޠ๏ʹ͋ͬͨෆҰக͍͋·͍͞ɺٕज़తͳݟղͷ૬ҧΛҰ ॹʹͳͬͯղֶܾ͠ΜͰ͍ͬͨ” “ͦͷ݁ՌɺࣄΛΑΓݫີʹໃ६ͳ͘આ໌Ͱ͖ΔΑ͏ʹͳͬͨ"
ܧଓతֶश • ܧଓతֶश ෆՄܽ • υϝΠϯϞσϧͷεΩϧ • ٕज़తͳࣝͷ্ • ͍·औΓΜͰ͍Δ۩ମతͳυϝΠϯʹ͍ͭ
ֶͯश͢Δ
ϢϏΩλεݴޠ • ڞ௨ݴޠͷͳ͍ϓϩδΣΫτ • ʑͷٞͰ͏༻ޠ๏͕ɺίʔυʹຒΊࠐ·Ε Δ༻ޠ๏͔ΒΓ͞ΕΔ • ௨༁͕ඞཁʹͳΔ • Ϟσϧͷ֓೦Λࠞཚͤͯ͞͠·͏
• ίʔυͷഁյతͳϦϑΝΫλϦϯάʹͭͳ͕Δ
ϢϏΩλεݴޠ • ։ൃऀͷؒͰ༻͞Εͳ͚ΕͳΒͳ͍ • ݴޠΛ͏্Ͱ͕͋ΕɺΘΓͷදݱΛ༻͍ ࣮ͯݧ͢Δ • ݴޠʹର͢ΔมߋɺυϝΠϯϞσϧʹର͢Δมߋ • ίʔυͷΫϥεϝιουͷ໊લΛม͑ͨΓ;
Δ·͍Λมߋͨ͠Γ͢Δ͜ͱʹͭͳ͕Δ
υΩϡϝϯτͱਤ • ϞσϧਤͰͳ͍ • ਤ͕දݱ͍ͯ͠Δͷߟ͑ํͷࠎ֨ • ઃܭʹؔ͢Δຊ࣭తͳৄࡉɺίʔυʹ͓͍ͯͱΒ͑ΒΕΔ • υΩϡϝϯτίʔυձͷදݱΛิΘͳ͚Ε͍͚ͳ͍ •
ίʔυͰදݱͰ͖͍ͯΔͷΛυΩϡϝϯτͰ͢Δ͖Ͱ ͳ͍ • υΩϡϝϯτৗʹ࠷৽ͰϓϩδΣΫτͷ׆ಈʹऔΓࠐ·Ε͍ͯͳ ͚ΕͳΒͳ͍ʢϓϩδΣΫτͷ׆ಈͷҰ෦Ͱ͋Δ͜ͱʣ
Ϟσϧͱ࣮Λ݁ͼ͚ͭΔ • Ϟσϧۦಈઃܭ • ڧݻͳϢϏΩλεݴޠΛࢧ͑Δ͜ͱ • υϝΠϯͱ࣮྆ํͷతʹ͑Δ୯ҰͷϞσϧΛཁٻ͢Δ͜ͱ • ΦϒδΣΫτࢦͷΑ͏ͳϞσϦϯάύϥμΠϜΛࢧ͑ΔιϑτΣ Ξ։ൃͷͨΊͷπʔϧͱݴޠ͕ඞཁ
• ίʔυΛ࡞͢Δਓ͕ϞσϧʹΛײ͍ͯ͡ͳ͍߹ɺΞϓϦ έʔγϣϯͷͨΊʹϞσϧΛػೳͤ͞Δํ๏Λཧղ͍ͯ͠ͳ͍߹ɺ ͦͷϞσϧιϑτΣΞͱແؔʹͳͬͯ͠·͏ɻ
ࠎ֨ΛΈͤΔ • Ϟσϧ͕໌Β͔ʹͳΕ • ϢʔβιϑτΣΞͷજࡏೳྗʹͬͱ৮ΕΒ ΕΔΑ͏ʹͳΓ • ;Δ·͍Ұ؏ͨ͠༧ଌՄೳͳͷʹͳΔ ͪΌΜͱϞσϧ͕ઃܭʹөͰ͖͍ͯΕɺϢʔβ͕ ιϑτΣΞ෦ʹ͍ͭͯ͋Δఔ༧ଌͰ͖Δͷ
ʹͳΔ
ୈ1෦·ͱΊ • ϝϦοτ • ༻ޠͷਖ਼֬ͳهड़ཧղ͕ϝϯόʔؒͰͰ͖ͦ͏ • ͜ΕʹΑΓ࡞ۀޙͷ༷ࠩ͠ͷݟམͱ͠ॳظஈ֊Ͱݟ͚ͭ͘͢ͳΓͦ͏ • σϝϦοτ •
ϞσϧͷϝϯςφϯείετͦΕͳΓʹߴͦ͏ • ϞσϧΛৠཹ͢ΔίετʢݴޠͷมߋɺυΩϡϝϯτͷมߋɺίʔυͷมߋʣ • ϞσϧΛมߋͨ͠ΒϦϑΝΫλϦϯάΛߦΘͳ͚Ε͍͚ͳ͍
͓ΘΓ