Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
花束問題をDDDで考える
Search
hidenorigoto
April 25, 2015
Programming
6.8k
9
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
花束問題をDDDで考える
2015.4.25 第40回 IT勉強宴会 スライド
https://atnd.org/events/64593
hidenorigoto
April 25, 2015
More Decks by hidenorigoto
See All by hidenorigoto
ドメインと向き合う - 旅行予約編
hidenorigoto
4
1.2k
「ソフトウェア設計」のドメイン - 「データモデリングでドメインを駆動する」を読んで
hidenorigoto
10
3.5k
メルカリ バックエンド領域のこれまでとこれから
hidenorigoto
1
650
メルカリのエンジニアリング組織の変化〜Engineering Managerの視点から〜
hidenorigoto
0
8.9k
The changes of the engineering organization in Mercari - from the view of an engineering manager -
hidenorigoto
0
350
PHPerKaigi 2019 ランチセッション (3/31)
hidenorigoto
1
4.6k
抽象化って何? (What is abstraction?)
hidenorigoto
9
4.9k
抽象化って何? (What is abstraction?)
hidenorigoto
11
7.8k
続・SOLIDの原則ってどんなふうに使うの? 〜オープン・クローズドの原則 センパイのコーディングノート編〜
hidenorigoto
14
6.5k
Other Decks in Programming
See All in Programming
Vue Fes Japan の “作る側”に関わってみて
naokihaba
1
180
Groovy as a human and AI friendly programming language
paulk
0
100
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
180
Railsバージョンを4倍にした話
optim
0
540
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
450
phperだってパンチカードでコーディングしたい
o0h
PRO
0
400
ChromeでローカルLLM
ryu1013
0
160
ジョジョの世界をXRで再現する
mofurune
0
180
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
1.1k
Zero-Tap Sign-In対応、結局何をすればいいの?
mitohato14
0
410
Next.js: The final boss of Web Performance
guaca
0
320
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
460
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Between Models and Reality
mayunak
4
500
The Curse of the Amulet
leimatthew05
3
16k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
Site-Speed That Sticks
csswizardry
13
1.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
Speed Design
sergeychernyshev
33
2.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
sira's awesome portfolio website redesign presentation
elsirapls
0
460
Transcript
ՖଋΛ %%%ʢυϝΠϯۦಈઃܭʣ Ͱߟ͑Δ 1)1ϝϯλʔζɹޙ౻लએ ୈճ*5ษڧԅձ υϝΠϯɺҙਤɺϢʔεέʔε
ࣗݾհ w ޙ౻लએʢ͝ͱ͏ͻͰͷΓʣ UXJUUFS!IJEFOPSJHPUP w ٱอ͞Μͱͱʹ1)1ϝϯλʔζͱͯ͠׆ಈ w ϓϩάϥϚʔ͚τϨʔχϯάʢ%%%ؚΉʣ w *5ษڧԅձୈճʢʣ
ʮυϝΠϯۦಈઃܭΛΖ͏ʯߨࢣ୲
ϞσϦϯάݪଇ w ຊ࣭ʢFTTFOUJBMTʣΛϞσϧԽͤΑ w େہ؍ʢQFSTQFDUJWFʣΛఏڙͤΑ w ޮՌతͳୡʢF⒎FDUJWFDPNNVOJDBUJPOTʣΛਤΕ ιϑτΣΞΤϯδχΞϦϯάجૅࣝମܥ48�,7Q
ಈ͘ϞσϧͰ͋Ε
γεςϜͱʁ
QIPUPCZ/BLBUBOJ:0TIJGVNJ$$#: QIPUPCZ%JDL5IPNBT+PIOTPO$$#:
None
ճస൘ͱ͍͏໊ͷγεςϜ w ίοΫʹͱͬͯख࣋ͪΦʔμͷهԱஔ w ಥવͷଟͷདྷ٬ʹର͢Δ؇িஔ w ػஔ w ະॲཧจҰཡද w
্هͷػೳΛඋ͑ͨʮγεςϜʯ ࢀߟɿ٢ݪݡ࣏ஶʰઓུใγεςϜͷண؟441ͷݯྲྀʱQʙ
શମΛγεςϜͱͯ͠ݟΔͱ
ճస൘ͷಋೖʹઃܭ
ʮઃܭʯͷʮҙਤʯ ԿͷͨΊʁ
ล͞ΜͷϞσϧͰ ลࡾ͞ΜʮϞσϦϯάͷඪ४͔ΒֶΔ͜ͱʯ IUUQXBUBOBCFLDPDPMPHOJGUZDPNCMPHQPTUEIUNM
ۀϑϩʔ डʙग़ՙͷྲྀΕ ൃʙೖՙͷྲྀΕ ࡏݿཧͷྲྀΕ
σʔλϞσϧ ౷ܭσʔλཧ ߪೖσʔλཧ σʔλཧ ൢചσʔλཧ
Ϟσϧ͔Βݟ͑ͨͷ ड༧ఆ ୯ ग़ՙϩοτ໌ࡉ ൃ໌ࡉ ୯ϩοτ ཧ ൢചཧ ࡏݿཧ ߪೖཧ
Ͳ͏ͬͯʁ
υϝΠϯۦಈઃܭ %PNBJO%SJWFO%FTJHO
υϝΠϯͱ w ྖҬ w ʮݱʯʮݱͷ෦ॺʯͰͳ͍ ੵۃతʹݟग़͍ͯ͘͠
υϝΠϯͷγεςϜ w ʮυϝΠϯͷγεςϜʯͱ͍͏υϝΠϯ ͷυϝΠϯ Λղܾ͢Δ γεςϜͷυϝΠϯ γεςϜͷ࡞Γํ ͷυϝΠϯ ղܾʹ͏
ղܾʹ͏ ಓ۩ͷઢͰ Λཧղ ಓ۩ͷઢͰ Λཧղ
औΓ্͛Δύλʔϯ w ڥք͚ͮΒΕͨίϯςΩετ #06/%&%$0/5&95 w ͷϨΠϠ 3&410/4*#*-*5:-":&34 ͦͷଞ͍͔ͭ͘
ࢥߟͷϑϨʔϜϫʔΫ
ՖଋΛߟ͑Δ
࠷ॳʹॻ͍ͨਤ
͜͜·Ͱͷաఔ w υϝΠϯείʔϐϯάʢυϝΠϯͷೝࣝʣ w ԿΒ͔ͷʮઢʯΛҾ͘ w ʮྖҬʯʹ͚Δ w υϝΠϯϞσϦϯάʢυϝΠϯͷཧղʣ w
ௐΔ
υϝΠϯੳ w ՖͷۀͰʹͳ͍ͬͯΔ͜ͱͳͲ w ʲҴ֞ੜՖళʳੜՖͷϩεݮͰձࣾސ٬ ʮΦʔϧεϚΠϧʯ ϩεɺࡏݿ͕ IUUQXXXULDKQDMJFOUDPNQBOZNJMMJPOTDBMFCVTJOFTTIUNM
ଞͷใ w ੨ࢁϑϥϫʔϚʔέοτɺͳͥࢢՁͷֹͰՖΛ ചͬͯṶ͔Δͷ͔ʙޙฤʙ w ҰൠతͳՖͷϩεɺ࠾༻ͨ͠ˋఔ͕ී ௨Ͱɺͦͷɺ୯Ձ͕ߴ͘ͳ͍ͬͯ·͢ IUUQEJBNPOEKQBSUJDMFT
ଞͷใ w IUUQXXXLPTVLFPHBXBDPN FJE w ཧΛపఈ͢Δ͜ͱͰϩεݮΒͤ·͢ɻ͋Δ͓ Ֆ͞ΜͰɺʰ͓٬͞Μ͕͓ՖΛങͬͯҎʹ ރΕͯ͠·ͬͨΒɺ৽ͳ͓Ֆͱަ͢Δʱͱ͍͏ ࣋ͪอূΛ࢝Ί·ͨ͠ɻަ͕ଟ͍ͱଛ͢ΔͷͰɺૣ ͘ೖΕͨͷ͔ΒॏతʹചΔ͜ͱΛపఈͨ͠ͱ͜
Ζɺϩε͕ܹݮɻೖΕΛݮΒͯ͠ϩεΛͳ͘͢Α ΓɺཧΛͬͨ΄͏͕Δ͔Ṷ͔ͬͨͷͰ͢
ελʔτ w ֓೦ΛऔΓग़͢ w ʮ໊ࢺʯʹͩ͜ΘΒͳ͍ɻ w Ή͠Ζɺʮಈࢺʢৼɾॲཧɾಈ࡞ʣʯʹΑΓଟ͘ ͷҙΛ͏
͔ΒࡶଟʹϐοΫΞοϓ ϩοτ ࡏݿਪҠ ड૿Ճ ৽ͳՖ ه೦ Ֆଋ ഇغ ࡏݿ རӹ৳ͼΈ
୯ ೖઌ ࣭ҡ࣋Մೳ ݁ଋ ग़ՙ ୯ൢചແ ͠ Ϧϐʔλ ಘҙઌ ಧ͚ઌ ग़ՙ ग़ՙ͓ಧ ͚ͷલ ग़ՙͷมߋ ൃϦʔυλ ΠϜ ೖՙ ߪೖ୯Ґ
େߏΛݟΔ w ύʔεϖΫςΟϒ w ந w ԿาҾ͍ͯݟΔ
ॎʹΔ ϩοτ ࡏݿਪҠ ड૿Ճ ৽ͳՖ ه೦ Ֆଋ ഇغ ࡏݿ རӹ৳ͼΈ
୯ ೖઌ ࣭ҡ࣋Մೳ ݁ଋ ग़ՙ ୯ൢചແ ͠ Ϧϐʔλ ಘҙઌ ಧ͚ઌ ग़ՙ ग़ՙ͓ಧ ͚ͷલ ग़ՙͷมߋ ൃϦʔυλ ΠϜ ೖՙ ߪೖ୯Ґ ཧ ߪೖཧ ࡏݿཧ ൢചཧ
ڥք͚ͮΒΕͨίϯςΩετ ཧ ߪೖཧ ࡏݿཧ ൢചཧ ୯ ϩοτ ೖઌ ൃϦʔυλ
ΠϜ ೖՙ ߪೖ୯Ґ ࡏݿਪҠ ഇغ ࣭ҡ࣋Մೳ ग़ՙ ಘҙઌ
ڥք͚ͮΒΕͨίϯςΩετ ཧ ߪೖཧ ࡏݿཧ ൢചཧ ୯ ϩοτ ೖઌ ൃϦʔυλ
ΠϜ ೖՙ ߪೖ୯Ґ ࡏݿਪҠ ഇغ ࣭ҡ࣋Մೳ ग़ՙ ಘҙઌ ൃ ސ٬ཧ ड
ॳظͷίϯςΩετׂ w ίϯςΩετʢαϒυϝΠϯʣΛݟग़͢ࢼΈ w தʹଐ͍ͯ͠Δͷʢ֓೦ʣͷऩ·Γ۩߹ΛΈΔ w ίϯςΩετ͕ҧ͑ɺݴ༿͕มΘΓɺใͷ୯Ґ มΘΔʢม͑ΒΕΔʣ ɹɹˠίϯςΩετϚοϓʢมʣ
ڥքͷʮ͋ͪΒʯͱʮͪ͜Βʯ ࡏݿཧ ൢചཧ ࡏݿਪҠ ड डॲཧͰ ࡏݿΛνΣοΫ͢Δ
ڥքͷʮ͋ͪΒʯͱʮͪ͜Βʯ ࡏݿཧ ൢചཧ ࡏݿਪҠ ࡏݿ༧ఆ ͍߹Θͤ ड ࡏݿ֓೦ ͪ͜Βʹ ग़ͯ͜ͳ͍
डՄೳ ֬ೝ ൢച֓೦ ͪ͜Βʹ ग़ͯ͜ͳ͍ ίϯςΩετϚοϓ ίϯςΩετؒͰΤϯςΟςΟΛม
݅Λ໌ࣔԽ ൢചཧ ड डՄೳ֬ೝ ࡏݿ ཧ ࡏݿ͕͋Δ͜ͱ ΦʔόʔϒοΩϯά ϙϦγʔʁ ސ٬
Ωϟϯϖʔϯ ҉తͳ֓೦Λ ໌ࣔతʹ͢Δ ʢ༷ύλʔϯʣ
ͷϨΠϠ w Ϗδωεͷͷ֊ʹରԠͤͨ͞ߏ ҙࢥܾఆࢧԉ ϙϦγʔ ۀ જࡏೳྗ ֬
ࡏݿϩεͷ ࡏݿਪҠ ࣭ҡ࣋Մೳ ഇغ ϩοτ ೖՙ ҙࢥܾఆࢧԉ ϙϦγʔ ۀ જࡏೳྗ
֬ ϩεΛݮΒ͍ͨ͠ Ͳ͏͢Εʁ
ࡏݿϩεͷ ҙࢥܾఆࢧԉ ϙϦγʔ ۀ જࡏೳྗ ֬ ࡏݿਪҠ ࣭ҡ࣋Մೳ ഇغ ϩοτ
ೖՙ ࡏݿϩε ϩε ΰʔϧͷ֬ೝ ൃ ൃ ৽ͳՖ ཧ ड૿ ൢചػձଛࣦ ύϥϝʔλͷ ൃݟ
શ෦ඞཁͳΘ͚Ͱͳ͍ w ͷߏΛѲ͢ΔͨΊ
ΠςϨʔγϣϯ̍
ΫϥεΛߟ͑Δ w ͜Ε·Ͱݟग़ͨ͠ͷΛΫϥεʹམͱ͢ w ੩తɹˡˠɹಈత w ࠓճಈతͳํ͔Β
ར༻ͨ͠ύλʔϯ w ΤϯςΟςΟ w Ϣʔεέʔε w αʔϏε w ༷ w
υϝΠϯΠϕϯτ υϝΠϯϞσϦϯάʹ͏ ϏϧσΟϯάϒϩοΫ ͲΕͦͷ·· ΫϥεʹରԠ
͜Εಈ͘ͷ͔ʁ w ͜ͷϞσϧɺಈ͔͘Ͳ͏͔ݕূ͞Ε͍ͯͳ͍ɻ w ࣮ͨ͠ΓɺϞσϧͷݴ༿Ͱͨ͠Γͯ͠ɺϞσϧ ͕Γཱ͍ͬͯΔͷ͔ϑΟʔυόοΫΛಘͭͭɺϞ σϧΛमਖ਼ɾ͍ͤͯ͘͞ɻ
ΠςϨʔγϣϯ̎
࣮ʁ ࣮ɹʹɹϞσϧ
ίʔυΛॻ͘ ϞσϦϯά׆ಈͱͯ͠ͷ࣮ *NQMFNFOUJOHBTBQBSUPG.PEFMJOH
(JU)VC IUUQTHJUIVCDPNQIQNFOUPSTKQqPXFSTIPQ
୯
จ
୯ࡏݿਪҠɾൃɾഇغ
୯ࡏݿਪҠɾൃɾഇغ
ൃՄೳͳೖՙ༧ఆ w ϦʔυλΠϜʹΑΔ ୯ϦʔυλΠϜ ର ܭࢉج४ ୯
݅Λม͑ͯΈΔ
None
࣮Ͱཧղɾݕূ ಈ͘Ϟσϧ ਤࣔͳͲͰཧղɾ ݕূ
None
None
ϩοτͷࡏݿΛ Ͳ͏ཧ͢Δ͔ʁ
ϩοτผࡏݿਪҠϞσϧ ϩοτ ɾೖՙ༧ఆ ɾ࣭ظݶΕ ϩοτࡏݿਪҠ ɾ ɾ ϩοτࡏݿਪҠ ɾ ɾ
ϩοτࡏݿਪҠ ɾ ɾ ϩοτࡏݿਪҠ ɾ ɾ ഇغ༧ఆ ɾ ɾഇغ ༗ݶͱ֬ఆ͍ͯ͠Δ Լ͞Μͷ&3ͱίϯηϓτಉ͡
None
ผ୯ࡏݿͷ ܭࢉ
୯ࡏݿܭࢉ ϩοτ ɾೖՙ༧ఆ ɾ࣭ظݶΕ ϩοτࡏݿਪҠ ɾ ɾ ϩοτࡏݿਪҠ ɾ ɾ
ϩοτࡏݿਪҠ ɾ ɾ ϩοτ ɾೖՙ༧ఆ ɾ࣭ظݶΕ ϩοτࡏݿਪҠ ɾ ɾ ϩοτࡏݿਪҠ ɾ ɾ ཁग़ՙ ɾ ɾ ཁग़ՙ ɾ ɾ ࡏݿ ɾ ɾ ࡏݿ ɾ ɾ
ϩοτࡏݿਪҠ ɾ ɾ ϩοτࡏݿਪҠ ɾ ɾ ཁग़ՙ ɾ ɾ ࡏݿ
ɾ ɾ ୯ࡏݿܭࢉ ద༻ લ ద༻ લ
None
ผ୯ࡏݿߋ৽ॲཧ
ผϩοτࡏݿਪҠɹߋ৽ॲཧ
None
͜͜·ͰͰ w υϝΠϯʹର͢Δཧղ w ಈ͘ɺ࣮Ͱ֬ೝ͞ΕͨϞσϧ
࣮ʹϞσϦϯάͷ Λղܾ͢Δ γεςϜͷυϝΠϯ γεςϜͷ࡞Γํ ͷυϝΠϯ ղܾʹ͏ ಓ۩ͷઢͰ Λཧղ
ΠςϨʔγϣϯ̏
ಡΈ্͛Δ w ࣮ͨ͠Ϋϥε܈ΛɺίʔυΛΕͯʮݴ༿ʯͰݕ ূ͢Δ w ݴޠͷཧʹͯ·Δ͔ʁ w Ϣʔεέʔε͕ॏཁ
·ͱΊ w υϝΠϯۦಈઃܭͷʮࢥߟͷϑϨʔϜϫʔΫʯΛͬ ͯυϝΠϯΛೝࣝɾཧղ͢Δաఔ w ϏϧσΟϯάϒϩοΫͰϞσϧΛΈཱͯΔաఔ w ίʔυ࣮ͱʢ͢ʣݴޠʹΑΓɺϞσϧΛݕূɾ मਖ਼͢Δաఔ
%4-ϓϥοτϑΥʔϜ w ʢຊͷʮ͠ݴ༿ʯத৺Ͱ͕ͨ͠ʣ w ͠ݴ༿ʹݶΒͳ͍ɺʮυϝΠϯ4QFDJpDͳݴޠʯ ΛฤΈग़͢ɹˠɹͦΕ͕ಈ͘ϓϥοτϑΥʔϜ ʢ͜ͷ෦͕औΓΉ͖υϝΠϯͩʣ
ࢀߟॻ੶ w ΤϦοΫɾΤϰΝϯεஶʰΤϦοΫɾΤϰΝϯεͷ υϝΠϯۦಈઃܭʱᠳӭࣾ w +BNFT0$PQMJFOஶʰϚϧνύϥμΠϜσβΠϯʱ ϐΞιϯ w ٢ݪݡ࣏ஶʰઓུใγεςϜͷண؟441ͷݯ ྲྀʱגࣜձࣾຊγεςϛοΫε