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_TDDでイケてる開発がしたい!!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ディップ株式会社
PRO
October 09, 2025
Technology
0
91
DDD_TDDでイケてる開発がしたい!!
ディップ株式会社
PRO
October 09, 2025
Tweet
Share
More Decks by ディップ株式会社
See All by ディップ株式会社
Agent Skils
dip_tech
PRO
0
110
Databricksについて.pdf
dip_tech
PRO
0
110
なぜ今_私たちはDDDに向き合うのか_佐藤薫.pdf
dip_tech
PRO
0
110
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
68
【dip】価値が「伝わる体験」を設計する ディップのDevRelが実践する、Findyサービス活用戦略
dip_tech
PRO
0
41
プロフェッショナルへの道:ビジネスを動かすエンジニアリング思想
dip_tech
PRO
0
120
ユーザーファーストを実現するためのチーム開発の工夫
dip_tech
PRO
0
94
1年目エンジニアが働いてみて感じたリアルな悩みと成長
dip_tech
PRO
0
43
ベイズマルチファクターモデルとbPCausal
dip_tech
PRO
0
35
Other Decks in Technology
See All in Technology
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.9k
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
180
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
580
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
310
Cosmos World Foundation Model Platform for Physical AI
takmin
0
930
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
460
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.3k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
160
Tebiki Engineering Team Deck
tebiki
0
24k
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
51
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
200
Test your architecture with Archunit
thirion
1
2.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
62
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.5k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
54
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
420
Transcript
σΟοϓגࣜձࣾ ொӬ ढ़հ ~Ϟμϯͳ։ൃΛಋೖ͢ΔͨΊʹͬͨࣄ DDD/TDDͰΠέͯΔ։ൃ͕͍ͨ͠ʂʂ
ொӬ ढ़հ σΟοϓגࣜձࣾ ࣗݾհ ͱඒ༰ࢣͱ͍͏Ṗͷܦྺͷ࣋ͪओɻ ͞ΈΛஔ͍ͨޙʮwebσβΠφʔͱ͔͓͠Ό Ε ~ ʯͱ͍͏ઙ͍ཧ༝ͰITͷಓΛࢦ͢ɻ ͳΜ͔Μ͋ͬͯ͋ͬͯࠓΤϯδχΞ
※σβΠφʔʹͳΕͳ͔ͬͨ
None
None
1. ͡Ίʹ 2. ಋೖ·Ͱͷนͱࠀ 3. มԽͱݱࡏ ΞδΣϯμ
͡Ίʹ
ຊ͓͢Δ͜ͱ • ࡢϦϦʔεͨ͠ʮεϙοτόΠτϧʯͷϦΞʔΩςΫνϟʹऔΓΜͰ͍·͢ • DDD/TDDΛऔΓೖΕ͍ͨʂ͕ɺϊϋͳ͍ɻͷঢ়گʹͲͷΑ͏ʹཱ͔͍ͪͬͯΔ͔Λ ͓͠·͢
• ฐ͔ࣾΒ8໊ࡇΓʹࢀՃ͍ͯ͠·͕͢ɺ൴ಉ͡νʔϜͰ͢
αʔϏεͷ͝հ
ݱߦΞʔΩςΫνϟɿ୯ҰDBʹґଘͨ͠ີ݁߹γεςϜ ঢ়گ: ෳͷγεςϜ͕ɺڞ௨ͷσʔλϕʔεϨίʔυΛڞ༗ νʔϜར༻ऀ(ϫʔΧʔ/ΫϥΠΞϯτ/CS)Λج४ʹׂ ՝: ಉ༷ͷϏδωεϩδοΫ͕֤ॴʹࢄɻ1ͭͷۀมߋ͕ෳνʔϜʹӨڹ ݁Ռ:ʮશνʔϜͰฒΈΛἧ͑ɺໃ६͕ى͖ͳ͍Α͏৻ॏʹ։ൃ͢Δʯͷ͕ৗଶԽ
ͬͱΠέͯΔγεςϜʹͰ͖Δͣʂ • DDDͱ͔TDDͱ͔औΓೖΕͯ…
ಋೖ·Ͱͷนͱࠀ
࠷ॳͷน • DDD͕Ͳ͏͍͏ͷ͔ΘΒͳ͍ • ϝϦοτ͕Θ͔Βͳ͍ • ͏·͍͔͘͘Θ͔Βͳ͍
Ͳ͏ཱ͔͔ͪͬͨ
Կ͕ྑ͍ͷֶ͔ͿɺΊΔ
·ֶͣͿ • Θ͔Βͳ͍ͷෆ҆ • ϝϦοτΛͬͯΒ͏ɺࢍಉऀΛ૿͢
ΠϕϯτετʔϛϯάͷϫʔΫγϣοϓΛ࣮ࢪ • DDDͱԿ͔ɺDDDͷΞϓϩʔνʹΑͬͯࠓͱͲ͏มΘΔͷ͔ɺΛΔ • ෦ʹϊϋ͕ແ͍ͷͰϫʔΫγϣοϓࣗମ֎෦ͷ༗ࣝऀΛཔͬͨ
ΠϕϯτετʔϛϯάͷϫʔΫγϣοϓΛ࣮ࢪ • γεςϜ͕Ͳ͏ͳΔ͔Θ͔Δͱظײ͕༙͘ • ʮ࠾༻ϝϦοτ͋Γͦ͏ʯ • ʮ͏·͍͖ͦ͘͏ʯ • ʮΘ͔ͬͯ͘ΔʯͱϞνϕʔγϣϯ͕͕͋Δ
2ͭͷน • ࣮ફతͳϊϋෆ • ΦϒδΣΫτͬͯ͜ΕͰ͍͍ͷ…ʁ
ࣝͷݯઘΛڞ༗͢Δ • ڌΓॴͱͳΔॻ੶Λڞ༗ • ·ͣࣝͷݯઘΛ౷Ұͯ͠ઢΛ͋ΘͤΔ
• ࠓճҰ൪ڌΓॴͱͨ͠ͷʮυϝΠϯۦ ಈઃܭΛ͡ΊΑ͏ʯ • ઃܭʹࠔͬͨΒνʔϜͰ͜ͷຊͷࢥΛ ֬ೝ͢Δ • υϝΠϯۦಈઃܭͷجຊ֓೦ͱ࣮ફతͳ ༰͕Θ͔Γ͘͢ॻ͍ͯ͋Γ·͢ DDD:
υϝΠϯۦಈઃܭΛ͡ΊΑ͏
#1 جௐߨԋ/ϥΠϒίʔσΟϯά TDD Boot Camp 2020 Online • ࠷ॳʹνʔϜͰҰॹʹࢹௌ͢Δ࣌ؒΛͭ͘Γ ·ͨ͠
• t-w a d a ͞Μͷجௐߨԋ • ϥΠϒίʔσΟϯά͕͋ΓɺTDD࣮ફ࣌ͷࢥ ߟͷղઆΛฉ͖ͳ͕ΒίʔσΟϯά͕ݟΒΕ ΔͷͰඇৗʹֶͼ͍͢Ͱ͢ɻ • KentBeckࢯஶͷςετۦಈ։ൃڌΓॴͱ͠ ·͕͢ɺֶशޮͷ໘Ͱͪ͜ΒͷYoutubeࢹ ௌ͕ඇৗʹྑ͔ͬͨͱײ͍ͯ͡·͢
TDDͷ࠷ॳͷͭΒΈ • ͭΒΈᶃɿԿ͔ΒςετΛॻ͚͍͍͔͔Βͳ͍ • ͍࣮͔ͭΒ࢝ΊΑ͏ͱͯ͠͠·͏ • ࠷ॳख͕ࢭ·Δ • ಈըΛࢥ͍ग़࣮͠ફ͍ͯ͘͠͏ͪʹצॴ͕Θ͔ͬͯ͘Δ •
ͭΒΈᶄɿख͕ଟ͘։ൃ͕͔͔Δ • AI͕Χόʔ • ςετέʔε࡞ʙ࣮ફ·ͰAIΛ׆༻ͯ͠ΞτϓοτΛҡ࣋
֎෦ͷ༗ࣝऀ • ϫʔΫγϣοϓͷ։࠵Λґཔͨ͠༗ࣝऀʹཔΓֶͼΛਂΊΔ • զʑͷ߹ֶͼͷαϙʔτΛཔΕΔ༗ࣝऀ͕͍·ͨ͠ɻ֎෦ͷ༗ࣝऀʹཔΓֶͼΛಘΔͷ େࣄͩͱࢥ͍·͢ɻ
มԽͱݱࡏ
มԽᶃ • ಉ͡ֆΛݟͯͤΔΑ͏ʹͳͬͨ • ۀΛγεςϜʹམͱ͠ࠐΉϓϩηεΛʮશһͰʯֶΜͩ • ΠϕϯτετʔϛϯάͰඳ͍ͨֆΛڌΓॴͱͯ͠ɺࠓޙͷ͕ग़དྷΔΑ͏ʹͳͬͨ
มԽᶄ • ϢϏΩλεݴޠͷҙࣝ • Before • ݴ༿ͷͩ͜ΘΓ͕ͳ͘ɺදهΏΕΛؾʹ͢Δਓ͕ؒগͳ͔ͬͨ • After •
اը࣌ͰϢϏΩλεͷఆ͕ٛੵۃతʹߦΘΕΔΑ͏ʹ • จॻԽͯ͠όʔδϣϯཧ
มԽᶅ • ςετͷҙٛͷཧղ • Before • ʮΧόϨοδΛຬͨͨ͢Ίͷςετʯ͕ຮԆˠςετ͕࣮ʹґଘ • After •
ςετϑΝʔετͷఆண • DDD✕TDDͰɺςετ͕ʮυϝΠϯϧʔϧΛؚΉ༷ॻʯʹϨϕϧΞοϓ
ݱࡏ • औΓΈΛ࢝Ίͯऑ • 1ͭͷूΛຊ൪ϦϦʔεʹ͚ͯௐத • TDDͷ࠾༻Ұ෦ͷνʔϜʹཹ·͍ͬͯΔ • ͏·͘ߦ͍ͬͯͳ͍͜ͱ͍ͬͺ͍͋Δ •
ͦΕͰօͷҙࣝมΘ͖͍ͬͯͯΔ
࠷ޙʹ ϢʔβʔͷతͳՁఏڙ͕ٻΊΒΕΔதɺػೳ։ൃͱཱ྆ͤͯ͞ϦΞʔΩςΫνϟΛਪਐ ͢Δࣄ͘͠ɺ͏·͘ߦ͍ͬͯͳ͍ࣄଟ͍Ͱ͢ɻ Ͱ͕͢ɺ͜ͷෛ࠴Λ์ஔ͢ΕɺকདྷϢʔβʔՁΛಧ͚Δεϐʔυ͞ΒʹಷԽͯ͠͠· ͏ɻͦ͏৴ͯ͡ɺ͜ΕະདྷͷՁ͋Δࢿͩͱߟ͍͑ͯ·͢ɻ ͠օ͞ΜͷνʔϜ͕ಉ͡Α͏ͳ՝Λ๊͍͑ͯΔͳΒɺاը୲ऀͱ։ൃऀͰDDDͷษڧ͔Β ࢝ΊͯݟΔͱྑ͍͔͠Ε·ͤΜɻ զʑ͔ͦ͜Βελʔτ͠·ͨ͠ɻ اը୲։ൃऀ͕ۀΛΩϟονΞοϓ͢ΔඞཁੑΛڧ͘ײ͍ͯ͡ͳ͍͔͠Ε·ͤΜɻ ͦΕ։ൃʹूதͯ͠Β͓͏ͱɺྑ͔Εͱࢥ͍ͬͯͯ͠Δࣄ͔͠Ε·ͤΜɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠