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.1k
ISHOCON1 反省会
showwin
0
1.6k
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
370
Understand the mechanism! Let's do screenshots tests of Compose Previews with various variations / 仕組みから理解する!Composeプレビューを様々なバリエーションでスクリーンショットテストしよう
sumio
3
480
The Shape of a Service Object
inem
0
490
Why Prism?
kddnewton
4
1.7k
仮想ファイルシステムを導入して開発環境のストレージ課題を解消する
segadevtech
2
500
マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~
cut0
1
260
A New Era of Testing
mannodermaus
2
230
XStateでReactに秩序を与えたい
gizm000
0
710
エンジニア1年目で複雑なコードの改善に取り組んだ話
mtnmr
3
1.9k
How to Break into Reading Open Source
kaspth
1
190
LangChainでWebサイトの内容取得やGitHubソースコード取得
shukob
0
150
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
970
Featured
See All Featured
Being A Developer After 40
akosma
84
590k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
2k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
Art, The Web, and Tiny UX
lynnandtonic
294
20k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
38
9.2k
4 Signs Your Business is Dying
shpigford
179
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
8.9k
Code Review Best Practice
trishagee
62
16k
How to Think Like a Performance Engineer
csswizardry
16
950
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ͳͲͷσβΠϯύλʔϯΛ༻ •
ڥք͚ͮΒΕͨίϯςΩετΛҙࣝͨ͠ઃܭ • ίϯςΩετ͝ͱʹϚΠΫϩαʔϏεԽ͢Δ ઓज़తઃܭͷͳ͠
࣍ճʹଓ͘ʜ