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
takuma.watabiki
August 30, 2024
Programming
4
430
ドメイン駆動設計を実践するために必要なもの
BPStudy#204〜ドメイン駆動設計をはじめよう
発表資料です。
takuma.watabiki
August 30, 2024
Tweet
Share
More Decks by takuma.watabiki
See All by takuma.watabiki
フリースタイル・ストリーム・トークについて
bikisuke
0
94
Other Decks in Programming
See All in Programming
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
160
プロダクトの品質に コミットする / Commit to Product Quality
pekepek
2
760
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Italy
prof18
0
150
Scalaから始めるOpenFeature入門 / Scalaわいわい勉強会 #4
arthur1
1
300
nekko cloudにおけるProxmox VE利用事例
irumaru
3
420
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
testcontainers のススメ
sgash708
1
120
Criando Commits Incríveis no Git
marcelgsantos
2
170
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
1
350
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
350
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.7k
Building Applications with DynamoDB
mza
91
6.1k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
YesSQL, Process and Tooling at Scale
rocio
169
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Rails Girls Zürich Keynote
gr2m
94
13k
Done Done
chrislema
181
16k
Making the Leap to Tech Lead
cromwellryan
133
9k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
#14UVEZ υϝΠϯۦಈઃܭΛ͡ΊΑ͏
͓͜ͱΘΓ ຊηογϣϯͷ༰ɺݸਓͷݟղͰ͋Γɺ ॻ੶ʰυϝΠϯۦಈઃܭΛ͡ΊΑ͏ʱͱ ΄ͱΜͲؔ͋Γ·ͤΜɻ
υϝΠϯۦಈઃܭΛ ࣮ફ͢ΔͨΊʹඞཁͳͷ
ࣗݾհ w໖ҾୖຏʢΘͨͼ͖ͨ͘·ʣ wגࣜձࣾσϥΠτςΫϊϩδʔζදऔక wιϑτΣΞΞʔΩςΫτɺϓϩάϥϚʔɺΞδϟΠϧ ίʔνɺݚमߨࢣͳͲͳͲɻ wॻ੶ w ʰ(SBEMFపఈೖʱڞஶʢᠳӭࣾɺʣ w ʰυϝΠϯۦಈઃܭΛ͡ΊΑ͏ʕιϑτΣΞͷ࣮ͱࣄۀઓུΛ݁
ͼ͚ͭΔ࣮ફٕ๏ʱ༁ॻʢΦϥΠϦʔɾδϟύϯɺʣ
υϝΠϯۦಈઃܭΛ ࣮ફ͢Δͱʁ
υϝΠϯۦಈઃܭ wΑ͍ιϑτΣΞΛ࡞ΔͨΊͷઃܭٕ๏ wࣄۀ׆ಈΛཧղ͠ɺத֩ͱͳΔۀྖҬʹྗ wۀΤΩεύʔτͱڠྗ͠ɺಉ͡ݴ༿ΛҭΉ wࣄۀͱͱʹܧଓతʹਐԽ͍ͤͯ͘͞
ιϑτΣΞ։ൃͱ ਅ伨ʹ͖߹͍ଓ͚Δ͜ͱ
ͦͷͨΊʹඞཁͳͷ
৺ ٕ ମ
৺
ح৺ wରͱͳΔࣄۀۀɺؔ࿈͢Δ๏ͳͲ͞· ͟·ͳ͜ͱʹڵຯؔ৺Λ࣋ͭ w ࣗൃతʹߦಈ͢ΔͨΊͷݯ w ॳΊͯฉ͘ݴ༿ʹؔ৺Λ࣋ͭΑ͏ʹ৺͕͚Δ w ͩΜͩΜݴ༿ʹහײʹͳͬͯ͘Δ w
ҙຯఆ͕ٛᐆດͩͱؾ͕࣋ͪѱ͘ͳͬͯ͘Δ
୳ٻ৺ wۀʹର͢Δࣝͷਂ۷Γຊ࣭Λٻ͠Α͏ ͱ͢Δؾ࣋ͪɺιϑτΣΞͷਫ਼ʹදΕΔ w ٕज़తͳ୳ٻେࣄ͕ͩɺυϝΠϯۦಈઃܭͱ͍͏จ຺ʹ ͓͍ͯɺࣄۀۀʹؔ͢ΔࣝΛ୳ٻ͢Δͷ͕େࣄ w ୳ٻʹΑΓಘΒΕͨࣝඞͣίʔυʹදΕΔʢͣ
্৺ wݱࡏͷঢ়ଶʹຬͤͣɺΑΓ͙͢Εͨͷɺ ΑΓߴ͍ͷΛࢦͯ͠ྗ͢Δ w υϝΠϯۦಈઃܭΛ࣮ફ͢Δɺ͠ͳ͍ʹؔͳ͘ඞཁ w ιϑτΣΞΤϯδχΞͳΒ w ͨͿΜࠓࢀՃ͞ΕͯΔํ͋Δͣ
ٕ
ੳɾઃܭεΩϧ wରͱͳΔࣄۀۀΛੳ͠ɺઃܭʹམͱ͢ ͨΊʹඞཁͳٕज़ w Ϣʔεέʔε w ඞͣ͠6.-ʹͩ͜ΘΔඞཁͳ͍ ʢ͕ɺ6.-ͬΆ͘ඳ͍ͨํ͕ΘΓ͍͢ؾ͕͢Δ w
ϞσϦϯά w ֓೦ͷநग़ཧ͕Ͱ͖ΕΓํԿͰྑ͍
ίʔσΟϯάεΩϧ wʮଉΛٵ͏Α͏ʹίʔυΛॻ͚Δ͔ʯ͕ॏཁ w ۀࣝΛίʔυͰදݱ͢ΔͨΊʹ w ಘҙͳʢͦΕͳΓʹॻ͚ΔʣݴޠΛʹ͚ͭΔ w ݴޠ༷ͷཧղΛਂΊΔ w ίʔυͷදݱྗΛ্͛Δ
w ଞਓ͕ॻ͍ͨίʔυΛಡΉ w ࣗʹͳ͍࣮ςΫχοΫ͕͋Ε౪Ή w ಡΈͮΒ͍ίʔυ͕͋ͬͨΒԿ͕ѱ͍͔ߟ͑Δ
ίϛϡχέʔγϣϯεΩϧ w༗ࣝऀʢۀΤΩεύʔτʣ͔ΒۀࣝΛ Ҿ͖ग़ͨ͠ΓɺपғͷਓΛר͖ࠐΉࡍʹඞਢ w ઃܭॻΛಡΈղ͘ྗΑΓɺਓ͔ΒࣝΛҾ͖ग़͢ྗ w ༗ࣝऀͱΛ͢Δ߹ɺࣄલ४උ͕େࣄ w Ͱ͖ΔൣғͰԼௐ͓ͯ͘͠
w ฉ͖͍ͨ͜ͱϦετΛ༻ҙ͓ͯ͘͠ w ۙʹ༗ࣝऀ͕͍ͳ͍ɺఔͰۀͯ͠Δ߹ɺपғͷਓ Λಈ͔ͯ͠ձʢνϟοτՄʣͰ͖Δঢ়گΛ࡞Δ
ମ
ମ੍ʢνʔϜʣ wෳࡶ͞ʹཱ͔ͪ͏ͨΊʹɺಉࢤ͕ඞཁ w ཧղ͋Δ͓٬͞Μɺ্࢘ɺνʔϜϝϯόɺFUD w ཪΔਓͨ·ʹ͍Δ w എதΛ༬͚ΒΕΔ͕͍ؒΔ͔ɺ͍ͳ͍͔େ͖ͳҧ͍ w ͍͠ͳ͚Εɺ࡞ΔྗΛ
ڞಉମʢίϛϡχςΟʣ wυϝΠϯۦಈઃܭʹڵຯΛ͍࣋ͬͯΔਓ͕ͨͪ ू·ΔίϛϡχςΟ͔ΒࣄྫצॴΛಘΔ w ݱࡏɺ׆ൃͳίϛϡχςΟແͦ͞͏ɾɾɾ w %%%"MMJBODFʢʙʁʣ w %%%$PNNVOJUZ+1ʢʙʁʣ w
ݱ͔ΒֶͿϞσϧۦಈͷઃܭʢʙʁʣ w ࠓճͷ#14UVEZίϛϡχςΟͷҰͭͳͷͰɺͥͻ׆༻Λ
ମݧ wࢼ͠ʹͬͯΈͯɺݟΛੵΈ্͛Δ w ΧδϡΞϧʹ࣮ࢪͰ͖ΔͷɺܧଓͰ͖Δͷ͕͓͢͢Ί w ษڧձɺಡॻձ w ϫʔΫγϣοϓ w Πϕϯτετʔϛϯά
·ͱΊ wυϝΠϯۦಈઃܭΛ࣮ફ͢Δͱ͍͏͜ͱɺιϑτΣΞ ։ൃʹਅ伨ʹ͖߹͍ଓ͚Δͱ͍͏͜ͱ wͦͷͨΊʹඞཁͳͷɺ৺ٕମ w৺ɿح৺ɺ୳ڀ৺ɺ্৺ wٕɿੳɾઃܭɺίʔσΟϯάɺίϛϡχέʔγϣϯ wମɿମ੍ɺڞಉମɺମݧ
υϝΠϯۦಈઃܭΛ ࣮ફ͢ΔͨΊʹඞཁͳͷ