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
210
DDD勉強会 ~戦略的設計 編~
副業先のDDD勉強会で使った資料です。
戦略的設計と戦術的設計の2回に分けて実施予定の前半部分です。
ITO Shogo
May 25, 2020
Tweet
Share
More Decks by ITO Shogo
See All by ITO Shogo
好きなことを強みにしよう
showwin
1
460
LAPRAS CTOが考える 採用効率化Tips 5選
showwin
1
780
自作ISUCONのすすめ
showwin
0
88
Engineering Manager Discussion #1 - 自己紹介LT
showwin
1
530
採用要件を明確にしよう
showwin
0
110
スタートアップにおける技術的負債との向き合い方
showwin
0
820
アルゴリズムマネジメント
showwin
1
3.2k
ISHOCON1 反省会
showwin
0
1.7k
Other Decks in Programming
See All in Programming
"noncopyable types" の使いどころについて考えてみた
andpad
0
130
上手に付き合うコンポーネントテスト
quramy
3
1.2k
コードレビューと私の過去と未来
jxmtst
0
170
Cloud Adoption Frameworkにみる組織とクラウド導入戦略(縮小版)
tomokusaba
1
170
個人開発で使ってるやつを紹介する回
yohfee
1
660
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
120
M5Stack に色々な M5ユニットをつないで扱う為の新たなアプローチ
gob
0
200
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
370
Remix × Cloudflare Pages × Sentry 奮闘記 / remix-pages-sentry
nkzn
1
370
ECS向けのドリフト検知機構を実装してみた
tkikuc
0
270
CSC305 Lecture 01
javiergs
PRO
1
140
◯◯エンジニアになった理由
gessy0129
PRO
0
600
Featured
See All Featured
BBQ
matthewcrist
84
9.2k
Automating Front-end Workflow
addyosmani
1365
200k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
30
2.6k
How To Stay Up To Date on Web Technology
chriscoyier
786
250k
Building Better People: How to give real-time feedback that sticks.
wjessup
360
19k
Bash Introduction
62gerente
608
210k
The Invisible Customer
myddelton
119
13k
GitHub's CSS Performance
jonrohan
1030
450k
Thoughts on Productivity
jonyablonski
67
4.2k
Typedesign – Prime Four
hannesfritz
39
2.3k
The Pragmatic Product Professional
lauravandoore
31
6.2k
RailsConf 2023
tenderlove
28
840
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ͳͲͷσβΠϯύλʔϯΛ༻ •
ڥք͚ͮΒΕͨίϯςΩετΛҙࣝͨ͠ઃܭ • ίϯςΩετ͝ͱʹϚΠΫϩαʔϏεԽ͢Δ ઓज़తઃܭͷͳ͠
࣍ճʹଓ͘ʜ