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
Laravel+Layerd+TDD
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
gozaing
February 01, 2018
Programming
2.5k
0
Share
Laravel+Layerd+TDD
Laravelでレイヤードアーキテクチャを利用した実装サンプルです。
ソース:
https://github.com/gozaing/reminder
gozaing
February 01, 2018
More Decks by gozaing
See All by gozaing
最近の遊び-Just_For_Fun
tobaru
0
4
What I want to tell those who will become engineer managers from now on
tobaru
1
1.3k
ListeningTemplate
tobaru
0
96
coachable
tobaru
0
180
self-introduce
tobaru
0
150
Experiment with self-change
tobaru
3
160
201904_scrum_seven_things
tobaru
0
1k
スクラムとは。見積もりとは。
tobaru
0
960
Other Decks in Programming
See All in Programming
Modding RubyKaigi for Myself
yui_knk
0
870
dRuby over BLE
makicamel
2
290
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
17
5.5k
今さら聞けないCancellationToken
htkym
0
220
net-httpのHTTP/2対応について
naruse
0
420
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
130
The NotImplementedError Problem in Ruby
koic
0
230
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
260
JavaDoc 再入門
nagise
0
260
3Dシーンの圧縮
fadis
1
590
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
220
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
30 Presentation Tips
portentint
PRO
1
310
Between Models and Reality
mayunak
4
320
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
300
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
GraphQLとの向き合い方2022年版
quramy
50
15k
Faster Mobile Websites
deanohume
310
31k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
200
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
Optimizing for Happiness
mojombo
378
71k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
170
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
Transcript
-BSBWFMΛͬͨ ϨΠϠʔυΞʔΩςΫνϟ 5%% αʔόαΠυΤϯδχΞ ϑϧʔπύʔϥʔ!גࣜձࣾΫΠοΫ
͓ͷରͱ͍ͯ͠Δํ w 'BU$POUSPMMFS'BU.PEFMΛճආ͍ͨ͠ʢͷʣ w %%%Λ࢝Ί͍͕ͨͲ͔͜Βʁͱࢥ͍ͬͯΔ w .7$Ͱͳ͍ΞʔΩςΫνϟͰ࣮͍ͨ͠ w ςετ͍͢͠ίʔυͱʁͱߟ͍͑ͯΔ w
-BSBWFMʢ1)1ʣΛར༻͍ͯ͠Δʢ࣮αϯϓϧͰར༻ʣ
͓͢Δࣄ w ʢલʣຊεϥΠυͰ͢ w ϨΠϠʔυΞʔΩςΫνϟ w ࡞͢ΔΞϓϦέʔγϣϯͷઆ໌ w $POUSPMMFSͱ4FSWJDFΫϥε w
$POUSPMMFSΫϥεͷςετʢͷ͢͠͞ʣ w ʢޙʣιʔεΛ$MPOF֬͠͝ೝ͍ͩ͘͞ w 4FSWJDFΫϥεͱ3FQPTJUPSZΫϥε w 4FSWJDFΫϥεͱ3FQPTJUPSZΫϥεͷςετʢͷ͢͠͞ʣ
ޙΛͨͣʹશମΛݟ͍ͨํίνϥ w (JU)VC w IUUQTHJUIVCDPNHP[BJOHSFNJOEFS w ϝʔϧૹ৴ॲཧ࣮͞Ε͍ͯ·ͤΜ w मਖ਼ɺ࣮ͳͲࣗ͝༝ʹ͓ࢼ͠Լ͍͞ w
13Λ͓͓ͪͯ͠Γ·͢
࡞͢ΔΞϓϦέʔγϣϯͷཁ݅ʢ3FNJOEFS"QQʣ w ϝϯόʔਓ͕ࢀՃ͢Δ൪੍Πϕϯτ w కΊΓ·ͰͷΛදࣔ w ରऀʹϝοηʔδʢ˓લʣΛදࣔ w ରऀʹϦϚΠϯυϝʔϧʢ˓લʣૹ৴ "͞Μ
#͞Μ $͞Μ Γ Γ Γ
ΞʔΩςΫνϟͷઆ໌
༻͢ΔΞʔΩςΫνϟ w ϨΠϠʔυΞʔΩςΫνϟ w ্ҐԼҐʹґଘ͍͚ͯ͠ͳ͍ w ԼҐͷมԽʹΑ্ͬͯҐʹมߋ͕͋Δࣄڐ͞ͳ͍ w ϏδωεϩδοΫΛ%PNBJOͰٵऩ w
.7$ύλʔϯͰ͍͏$POUSPMMFS.PEFMʹϏδωεϩδοΫ͕ ᷓΕΔࣄΛ͙ʢ.7$Ͱ.PEFM͕ؤுΓ͗͢Δنͷ߹ʣ w ॲཧΛϨΠϠʔԽ͢ΔࣄͰΛ͠ςετ͍͢͠
.7$ͱϨΠϠʔυΞʔΩςΫνϟͷҧ͍ .7$ ϨΠϠʔυ $MBTT 7JFX 6* $POUSPMMFS "QQMJDBUJPO .PEFM %PNBJO
4FSWJDF %PNBJO.PEFM 7BMVF0CKFDU *OGSBTUSVDUVSF 3FQPTJUPSZ .7$Ͱ$POUSPMMFS.PEFM͕ؤுΓ͗͢Δࣄ͕ଟ͍
֤ϨΠϠʔͷׂ w ʢ%PNBJOʣ4FSWJDFΫϥε w ϏδωεϩδοΫͷ࣮ʢϧʔϧ༷Λຬͨ͢ʣ w ʢ%PNBJOʣ%PNBJO.PEFMΫϥε w υϝΠϯݻ༗ͷৼΔ͍ w
υϝΠϯݻ༗ͷΫϥε࣮ʢ7BMVF0CKFDUʣ w ʢ*OGSBTUSVDUVSFʣ3FQPTJUPSZΫϥε w ӬଓԽͷΞΫηεΛ࣮ʢσʔλιʔεɺϑΝΠϧʣ
ґଘΠϝʔδʢґଘؔٯసͷ๏ଇʣ 7JFX6* $POUSPMMFS"QQMJDBUJPO %PNBJO4FSWJDF 3FQPTJUPSZ *OUFSGBDF *OUFSGBDF
ґଘ্͕ҐϨΠϠʔ͔ΒԼҐϨΠϠʔʹ͘ͱʁ w 3FNJOEFS"QQͰɺࢀՃऀҰཡΛ$POpH͔Βऔಘ͍ͯ͠Δ w %#͔Βऔಘ͢ΔΑ͏ʹมߋ͍ͨ͠߹Ͳ͏Өڹ͢Δ͔ w ςετͷ߹͚ͩ$POpH42-JUFΛར༻͍ͨ͠߹Ͳ͏Өڹ ͢Δ͔ʢ݅ذͰରॲͯ͠͠·͍͕ͪʣ w ্هέʔεͰ্Ґͷมߋ͕ඞཁͱͳΔ
w ӨڹΛগͳ͘͢ΔͨΊ֤ϨΠϠʔΛૄ݁߹ʹ͢Δࣄ͕ॏཁ w ૄ݁߹ʹ͢ΔΈͱͯ͠ϨΠϠʔυΞʔΩςΫνϟΛར༻͢Δ
࣮ͱղઆ
ඞཁͳཁ͔݅Β࣮Λ࢝ΊΔ w ࢀՃऀҰཡΛऔಘ w ࢀՃऀҰཡ͔ΒకΛऔಘ w ࠓకΛߦ͍ɺΓΛࢉग़ w ΓΛ7JFXͰදࣔ ͜͏͍͏ॲཧ͕ඞཁͦ͏ͳͷͰ
$POUSPMMFSʹॻ͍͍ͯ͘
͋ͬͱ͍͏ؒʹ'BU$POUSPMMFS w ߇͑Ίʹॻ͍ͯ͜͏͍͏ϩδοΫʹͳΔ
ςετ͔͚Δ͕ w JOEFY ॲཧͷதͰ"#$ͱϩδοΫ͕ଓ͖ɺͲ͔͜Ͱࣦഊͨ͠߹ ͷέʔεΛఆ͢Δࣄ͕͍͠ w ԿΛͬͯਖ਼ৗऴྃͱ͢Δ͔ w ֤ॲཧΛׂ࣮ͯ͢͠ΔࣄͰέʔεఆΛগͳ͘͢Δࣄग़དྷΔ͕ τϥϯβΫγϣϯεΫϦϓτʹͳΓ͍͢
w Ͳ͜Ͱׂ࣮ͯ͢͠Δ͔ w $POUSPMMFS4UBUVT͕Λฦ͠ɺࢀՃऀҰཡ͕7JFXʹ͞ΕΔࣄͷ ΈΛ͓͍͍͑ʢࠓ͕ଟ͍'BUʣ w Ͳ͏ΛΓ͔͢ʁ w औಘɺՃ͕ͯ͢ಉ͡ॲཧͷதͰߦΘΕ͍ͯΔ
Ͳ͏࣮͢Δ͔ w 4FSWJDFΫϥεͰϩδοΫΛ࣮ w $POUSPMMFSͲͷΑ͏ͳॲཧͰࢀՃऀҰཡ͕ੜ͞ΕΔ͔Δඞཁ͕ͳ͍ w ੜ͞ΕͨࢀՃऀҰཡʹΓϝοηʔδؚ͕·Ε͍ͯΔ w UIJTTFSWJDFHFU"SSBZ-JTU ΛݺͿͷΈ
ίϯετϥΫλͰλΠϓώϯτ͞Ε͍ͯΔ͕ʁ w 4FSWJDFΫϥεͷ*OUFSGBDFΛλΠϓώϯτ w ৄࡉͷ࣮Λߦ͏4FSWJDFΫϥεɺ$POUSPMMFSʹλΠϓώϯτ͠ ͨ*OUFSGBDFʹґଘʢԼҐϨΠϠʔ্ҐϨΠϠʔͷநʹґଘʣ w JOEFYϝιουͷதͰɺ4FSWJDFΫϥεͷϝιουΛݺͿͷΈ w $POUSPMMFSʹॻ͖͕ͪͳۀϩδοΫΛ4FSWJDFΫϥεʹ
w $POUSPMMFSΛγϯϓϧʹอͭ
ΠϯλʔϑΣʔεͱ۩ΫϥεΛͲ͜Ͱඥ͚Δʁ w 4FSWJDF1SPWJEFSΛར༻ w ͜ͷొʹΑΓ$POUSPMMFSͰ۩Ϋϥε͕ੜ͞ΕΔʢ%*ίϯςφʣ w 1BSUJDJQBOU4FSWJDF*OUFSGBDF1BSUJDJQBOU4FSWJDF͕ੜ͞ΕΔ
͍ͯ͘͠͠ͳ͍͔ʁ w 4FSWJDFΫϥεɺ4FSWJDF1SPWJEFSɺ*OUFSGBDFͷར༻ʹΑΓొΫ ϥε૿͑Δʢίʔυͷهड़ྔ૿͑Δʣ w ϩδοΫΛڬ·ͳ͍$36%ΞϓϦέʔγϣϯʢϚελཧͷΑ͏ ͳʣͰ͋Εɺͷෆཁ͔͠Εͳ͍ w ϑΥʔΧεΛߜΓΛ͢Δࣄ͕త w
मਖ਼Օॴ͕໌֬ɺมߋͷӨڹΛड͚ʹ͍͘
࣮͕நʹґଘ͢ΔࣄʹΑΔϝϦοτ w 6OJU5FTU࣌4UVC4FSWJDFΫϥεʹࠩ͠ସ͑ͯςετ͢Δࣄ͕ग़དྷΔ 4UVC$MBTTʹࠩ͠ସ͑ ςετ࣌͜ͷϝιου͕ݺΕΔ
·ͱΊ w ϨΠϠʔʹΑׂ͕ͬͯ͋ΔʢϨΠϠʔυΞʔΩςΫνϟʣ w ׂΛ͚ΔࣄͰγϯϓϧ͞Λอͭ w ϑΥʔΧεΛߜΔࣄͰςετʹΑΔ୲อΛߦ͍͍͢ w ґଘؔΛཧղ͢Δ w
্ҐԼҐʹґଘ͍͚ͯ͠ͳ͍ w நʹґଘ͢ΔࣄͷϝϦοτΛཧղ w ςετ࣌ʹ4UVCͱࠩ͠ସ͑ʢଞʹߟ͑ΒΕΔ͕ࠓճ͜ ͷͷΈݴٴʣ
ࠓճ͓ͨ͠ൣғ 7JFX6* $POUSPMMFS"QQMJDBUJPO %PNBJO4FSWJDF 3FQPTJUPSZ *OUFSGBDF *OUFSGBDF ຊεϥΠυͰ"QQMJDBUJPO 4FSWJDFͷ͕͠ओͰ͢ 4FSWJDF3FQPTJUPSZಉ
༷ʹநʹґଘͨ͠Έͱ ͳΓ·͢ ͝ڵຯ͋ΕιʔεΛ͝ ཡ͍ͩ͘͞
8F"SF)JSJOH IUUQTKQSFDSVJUNJENBSLFU