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勉強会 ~戦略的設計 編~
Search
ITO Shogo
May 25, 2020
Programming
0
220
DDD勉強会 ~戦略的設計 編~
副業先のDDD勉強会で使った資料です。
戦略的設計と戦術的設計の2回に分けて実施予定の前半部分です。
ITO Shogo
May 25, 2020
Tweet
Share
More Decks by ITO Shogo
See All by ITO Shogo
Workflow automationによるインシデント原因調査の自動化
showwin
1
160
好きなことを強みにしよう
showwin
1
480
LAPRAS CTOが考える 採用効率化Tips 5選
showwin
1
800
自作ISUCONのすすめ
showwin
1
98
Engineering Manager Discussion #1 - 自己紹介LT
showwin
1
540
採用要件を明確にしよう
showwin
0
110
スタートアップにおける技術的負債との向き合い方
showwin
0
840
アルゴリズムマネジメント
showwin
1
3.2k
ISHOCON1 反省会
showwin
0
1.7k
Other Decks in Programming
See All in Programming
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
770
[JAWS-UG横浜 #76] イケてるアップデートを宇宙いち早く紹介するよ!
maroon1st
0
460
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
1
440
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
250
Spatial Rendering for Apple Vision Pro
warrenm
0
110
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
3
400
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
210
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
Go の GC の不得意な部分を克服したい
taiyow
3
780
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
GraphQLとの向き合い方2022年版
quramy
44
13k
Unsuck your backbone
ammeep
669
57k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
KATA
mclloyd
29
14k
Visualization
eitanlees
146
15k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
How STYLIGHT went responsive
nonsquared
95
5.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
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ͳͲͷσβΠϯύλʔϯΛ༻ •
ڥք͚ͮΒΕͨίϯςΩετΛҙࣝͨ͠ઃܭ • ίϯςΩετ͝ͱʹϚΠΫϩαʔϏεԽ͢Δ ઓज़తઃܭͷͳ͠
࣍ճʹଓ͘ʜ