Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DDD勉強会 ~戦略的設計 編~
Search
ITO Shogo
May 25, 2020
Programming
0
300
DDD勉強会 ~戦略的設計 編~
副業先のDDD勉強会で使った資料です。
戦略的設計と戦術的設計の2回に分けて実施予定の前半部分です。
ITO Shogo
May 25, 2020
Tweet
Share
More Decks by ITO Shogo
See All by ITO Shogo
Datadog Workflow Automation で圧倒的価値提供
showwin
1
930
Workflow automationによるインシデント原因調査の自動化
showwin
2
470
好きなことを強みにしよう
showwin
1
540
LAPRAS CTOが考える 採用効率化Tips 5選
showwin
1
880
自作ISUCONのすすめ
showwin
1
160
Engineering Manager Discussion #1 - 自己紹介LT
showwin
1
600
採用要件を明確にしよう
showwin
0
150
スタートアップにおける技術的負債との向き合い方
showwin
0
960
アルゴリズムマネジメント
showwin
1
3.2k
Other Decks in Programming
See All in Programming
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
37
24k
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
330
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
690
関数実行の裏側では何が起きているのか?
minop1205
1
670
Level up your Gemini CLI - D&D Style!
palladius
1
180
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
140
AIコーディングエージェント(skywork)
kondai24
0
150
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
310
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
300
CSC509 Lecture 14
javiergs
PRO
0
220
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
250
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
527
40k
Raft: Consensus for Rubyists
vanstee
141
7.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
It's Worth the Effort
3n
187
29k
Making Projects Easy
brettharned
120
6.5k
Building Adaptive Systems
keathley
44
2.9k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Transcript
ҏ౻উޜ %%%ษڧձdઓུతઃܭฤd
ࣗݾհ • ҏ౻উޜ ͠ΐ͏͝ !TIPXXJO • -"13"4גࣜձࣾ$50
ܦྺ • גࣜձࣾ... d • "84 3BJMTͰडୗ։ൃ Πϯϑϥ
όοΫΤϯυϝΠϯ • શࣾਓͰϑϧϦϞʔτϫʔΫ •-"13"4גࣜձࣾ d •ڞಉۀऀ $50 •ΤϯδχΞεΫϥϜϚελʔϓϩμΫτΦʔφʔΤϯδχΞ •Ϛωδϝϯτ ৫ͮ͘Γ ࠾༻͋ͨΓ͕ຊۀ
࠷ۙϋϚ͍ͬͯΔ͜ͱ • (PݴޠͰ%%% • લʹ3BJMTͰॻ͍ͨझຯαʔϏεΛ(PͰॻ͖͠த • Ϋιίʔυ͚ͩͲΛ࣮ײͰ͖ͯྑ͍ • 'BDUPSJP
• ࠷ۙͰͳ͍ʜ ༡ΜͰ͍Δ • ֦ுੑͷߴ͍Λઃܭ͢Δͷָ͕͍͠Α
None
Ξϯέʔτ Έͳ͞Μͷ%%%ཧղΛڭ͑ͯԼ͍͞ʂ
%%%ཧղΞϯέʔτ
Έͳ͞ΜͲ͜Ͱ͔͢ʁ ᶃ ᶄ ᶅ ᶆ ᶇ ᶃݴ༿ฉ͍ͨ͜ͱ͋Δ ᶄͳΜͱͳͬͯ͘Δ ᶅશʹཧղ͍ͯ͠Δ ᶆΘ͔Δؾ͕͢Δ͚Ͳɺ
Θ͔Δͬͯݴ͍ͮΒ͍ ᶇνϣοτϫΧϧ
ᶅ ᶃݴ༿ฉ͍ͨ͜ͱ͋Δ ᶄͳΜͱͳͬͯ͘Δ ᶅશʹཧղ͍ͯ͠Δ ᶆΘ͔Δؾ͕͢Δ͚Ͳɺ Θ͔Δͬͯݴ͍ͮΒ͍ ᶇνϣοτϫΧϧ Θͨ͜͜͠Ͱ͢ʜɹ
ࠓͷత %%%ͷೝࣝΛଗ͑Δ͜ͱ
%%%ͱݴΘΕͯԿΛࢥ͍ු͔·͔͢ʁ ϢϏΩλεݴޠ ϞσϦϯά ΦχΦϯΞʔΩςΫνϟ ϨΠϠʔυΞʔΩςΫνϟ υϝΠϯΤΩεύʔτ ڥք͚ͮΒΕͨίϯςΩετ 7BMVF0CKFDU &OUJUZ
%%%ͷΞϓϩʔνͷશମ૾ %%%ͷతʮϞσϦϯάΛ௨ͯ͡ιϑτΣΞͷՁΛߴΊΔʯ͜ͱ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత
ઃܭ ઓज़త ઃܭ Ϟσϧͷ࣮
େࣄͳͷ͜͜ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత ઃܭ
ઓज़త ઃܭ Ϟσϧͷ࣮
ܰྔ%%%ͱݴΘΕΔͷ ιϑτΣΞԽରͷݱ࣮ੈք υϝΠϯ ιϑτΣΞ ઓज़త ઃܭ left blank Ϟσϧͷ࣮
Ξϓϩʔνͷछྨ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత ઃܭ ઓज़త ઃܭ υϝΠϯ
ιϑτΣΞ ઓज़త ઃܭ υϝΠϯ ιϑτΣΞ ੈͷதͷଟ͘ͷ ιϑτΣΞ ܰྔ%%% %%%
%%%ͷతͬͯͳΜ͚ͩͬ
࠶ܝ େࣄͳͷ͜͜ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత
ઃܭ ઓज़త ઃܭ Ϟσϧͷ࣮
ઓज़ΑΓઓུͷ΄͏͕ॏཁ ઓज़త ઃܭ ઓུత ઃܭ ϢϏΩλεݴޠ ϞσϦϯά ϨΠϠʔυΞʔΩςΫνϟ
υϝΠϯΤΩεύʔτ ΦχΦϯΞʔΩςΫνϟ &OUJUZ 7BMVF0CKFDU ڥք͚ͮΒΕͨίϯςΩετ
Ͱੈͷதɺઓज़ͷͷํ͕ଟ͘ͳ͍ʁ
ઓज़ͱઓུΛΠϝʔδͯ͠ΈΔ
ઓज़ͷΠϝʔδ େྔͷఢ ਖ਼໘ಥഁ ઓज़ ରԠίετ ఢͷڧ͞ ઓज़ͳ͠ ઓज़͋Γ ʓʓਞܗ
ઓज़తઃܭͷ࠾༻ ࣗࠃ ΤϯδχΞνʔϜ ͚ͩͰ݁͢ΔͷͰ औΓೖΕ͍͢
ઓུͷΠϝʔδ େྔͷఢ ઓུ ྡࠃͷؒ ྡࠃͷؒ ରԠίετ ఢͷڧ͞ ઓज़ͳ͠ ઓज़͋Γ
ઓུ͋Γ
ઓུతઃܭͷ࠾༻ ଞࠃ ϏδωεαΠυ ר͖ࠐ·ͳ͍ͱ ͍͚ͳ͍ͷͰେม Ͱר͖ࠐΊͨΒڧ͍
ͰɺΦεεϝͷઓ͍ํʁ • %%%ෆ࠾༻ʁ • ܰྔ%%%ʁ • %%%ʁ
࣮ίετ ରυϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ରυϝΠϯͷෳࡶ͞Λߟ͑Α͏
• ଟ͘ͷιϑτΣΞ͕ѻ͍ͬͯ ΔυϝΠϯͷෳࡶ͞%%%͕ඞ ཁͳϨϕϧ • ࠓܰྔ%%%͕࠷దͳυϝΠϯ Λରͱ͍ͯͯ͠ɺޙʹ ରͱͳΔυϝΠϯ͕૿͑ͯ ෳࡶ͕͞૿͢͜ͱଟ͍ ෳࡶ͞ͷ໌֬ͳج४ʮ࣮ફυϝΠϯۦಈઃܭʯͷຊΛࢀর
ٳܜ☕
େࣄͳϞσϧͷ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత ઃܭ
ઓज़త ઃܭ Ϟσϧͷ࣮
ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ Ϟσϧͱ
εϚʔτϑΥϯͷྫ • ݱ࣮ʹଟ͘ͷཁૉ͕͋Δ • ػछ໊ • ϝʔΧʔ • 04
• ॴ༗ऀ • Ϙλϯͷ • ইͷ༗ແ • ॴ༗ྺ • FUDʜ
৽εϚϗͷൢചΛରͷυϝΠϯͱ͢Δ • ݱ࣮ʹଟ͘ͷཁૉ͕͋Δ • ػछ໊ • ϝʔΧʔ • 04
• ॴ༗ऀ • Ϙλϯͷ • ইͷ༗ແ • ॴ༗ྺ • FUDʜ ղܾʹ ͜ͷใ ෆཁ ϞσϧͱʜղܾͷͨΊʹɺࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ
ղܾͷͨΊʹɺࣄͷಛఆͷଆ໘ΛநԽ͢Δͱ ϞσϧͱʜղܾͷͨΊʹɺࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ ݱ࣮ੈքΛϞσϧԽ
ѱ͍Ϟσϧͱʜղܾ͕Ͱ͖ͳ͍Ϟσϧ ϞσϧͱʜղܾͷͨΊʹɺࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ ϓϥϯ Ͳ͏͠·͔͢ʁ ϓϥϯ͕දݱͰ͖ͳ͍ʜ
͏গ͠ෳࡶͰݱ࣮తͳྫΛߟ͑ͯΈΔ
࿀׆αʔϏε ͭͷओཁͳυϝΠϯͰߏ͞Ε͍ͯΔ ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾհ
ϞσϦϯάͯ͠ΈΔ ແྉϢʔβ ͰՄೳ ༗ྉϢʔβ ͷΈՄೳ ϓϨϛΞϜϢʔβ ͷΈՄೳ ࿀ਓީิ Λݕࡧ
ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾհ
͜ΕΛιϑτΣΞͰ࣮͢Δͱʜ ແྉϢʔβ ͰՄೳ ༗ྉϢʔβ ͷΈՄೳ ϓϨϛΞϜϢʔβ ͷΈՄೳ JG OPUVTFSJT@QBJE@VTFS
\ SBJTF"VUIPSJ[BUJPO&SSPS ^ ʜ JG OPUVTFSJT@QBJE@VTFS \ SBJTF"VUIPSJ[BUJPO&SSPS ^ JG OPUVTFSJT@QSFNJVN \ SBJTF"VUIPSJ[BUJPO&SSPS ^ ʜ JG OPUVTFSJT@QSFNJVN \ SBJTF"VUIPSJ[BUJPO&SSPS ^ ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾհ • ೝՄʹؔ͢ΔJGจ͕େྔʹग़ݱ • JGจͷॻ͖ΕͰແྉϢʔβͰ༗ྉ Ϣʔβ͚ػೳ͕͑Δόά͕ʜ
CFUUFSͳϞσϦϯά ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾհ ແྉϢʔβ ͰͳΕΔ
༗ྉϢʔβ ͷΈͳΕΔ ϓϨϛΞϜϢʔβ ͷΈͳΕΔ • ೝՄ֤υϝΠϯͷϢʔβΛ ࡞͢Δ࣌ʹ͚ͩߦ͏
ϞσϦϯά ઓུ ͷউར
࠶ܝ େࣄͳϞσϧͷ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత
ઃܭ ઓज़త ઃܭ Ϟσϧͷ࣮ %%%ͷతʮϞσϦϯάΛ௨ͯ͡ιϑτΣΞͷՁΛߴΊΔʯ͜ͱ
࣮ίετ ରυϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ͖ͬ͞ΑΓೲಘײ͋Γ·͔͢ʁ
࣮ίετ ରυϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ιϑτΣΞͷ߹͜ͷํ͕ഽײʹ͍ۙ
0 /? ͳܗ
ྑ͍ϞσϧΛͭ͘Δʹ • ڥք͚ͮΒΕͨίϯςΩετΛ໌Β͔ʹ͢Δ • ։ൃऀ͚ͩͰͳ͘ɺϏδωεଆͷਓͱಉ͡ݴ༿Λ͏ ϢϏΩλεݴޠ • ͦΕʹΑΓɺυϝΠϯʹৄ͍͠ਓ
υϝΠϯΤΩεύʔτ ͔ΒࣝΛಘΔ • ӡ༻ͯ͠ಘͨݟΛܧଓతʹϞσϧʹϑΟʔυόοΫ͢Δ ීஈͳΜͱͳ͍ͬͯ͘Δؾ͢Δ
υϝΠϯϞσϧਤΛڞ௨ݴޠͱͯ͠ॻ͘ͷ͕Φεεϝ • ΫϥεਤʹͦͷϞσϧ͕͍࣋ͬͯΔ੍ࣝΛه • ϏδωεଆίʔυΛಡ·ͳ༷͕ͯ͘ѲͰ͖Δ • 5%%ͱ૬ੑ͕ྑ͍
ྑ͍Ϟσϧ͕Ͱ͖ͨΒ࣮࣍ %%%ͷతʮϞσϦϯάΛ௨ͯ͡ιϑτΣΞͷՁΛߴΊΔʯ͜ͱ ιϑτΣΞԽରͷݱ࣮ੈք ղܾͷͨΊʹɺ ࣄͷಛఆͷଆ໘ΛநԽͨ͠ͷ υϝΠϯ Ϟσϧ ιϑτΣΞ ઓུత
ઃܭ ઓज़త ઃܭ Ϟσϧͷ࣮
ྑ͍ιϑτΣΞΛ࡞Δʹ • Ϟσϧܧଓతʹվળ͞ΕΔͷͰɺͦΕΛܧଓతʹөͰ͖ΔιϑτΣΞ͕ٻ ΊΒΕΔ • සൟͳมߋʹ͑͏Δʹɺ֦ுੑͷߴ͍ઃܭ͕ඞཁ • &OUJUZ3FQPTJUPSZͳͲͷσβΠϯύλʔϯΛ༻ •
ڥք͚ͮΒΕͨίϯςΩετΛҙࣝͨ͠ઃܭ • ίϯςΩετ͝ͱʹϚΠΫϩαʔϏεԽ͢Δ ઓज़తઃܭͷͳ͠
࣍ճʹଓ͘ʜ