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導入とユースケース駆動開発の話
Search
Taketo Nakasuji
October 11, 2017
Technology
1
560
新規システムのためのLaravel導入とユースケース駆動開発の話
以下で登壇した際のスライドです。
https://supporterz-seminar.connpass.com/event/67955/
Taketo Nakasuji
October 11, 2017
Tweet
Share
More Decks by Taketo Nakasuji
See All by Taketo Nakasuji
デザイナーが D2Cビジネスに身をおいてわかったこと
takenakasuji
2
8.8k
Elementのすすめ
takenakasuji
0
3.9k
Vue.jsを使ったら幸せになった話
takenakasuji
1
4k
IoTで実現するリアルストア戦略
takenakasuji
0
1.9k
Other Decks in Technology
See All in Technology
OSSで50の競合と戦うためにやったこと
yamadashy
3
1k
生成AI時代のPythonセキュリティとガバナンス
abenben
0
150
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
250
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
290
AI連携の新常識! 話題のMCPをはじめて学ぶ!
makoakiba
0
150
20251027_findyさん_音声エージェントLT
almondo_event
2
480
様々なファイルシステム
sat
PRO
0
260
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
140
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
130
AIエージェントによる業務効率化への飽くなき挑戦-AWS上の実開発事例から学んだ効果、現実そしてギャップ-
nasuvitz
5
1.4k
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
170
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
730
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Docker and Python
trallard
46
3.6k
How to Ace a Technical Interview
jacobian
280
24k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
640
It's Worth the Effort
3n
187
28k
Balancing Empowerment & Direction
lara
5
700
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Faster Mobile Websites
deanohume
310
31k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
৽نγεςϜͷͨΊͷ Laravelಋೖͱ Ϣʔεέʔεۦಈ։ൃͷ αϙʔλʔζCoLabษڧձ גࣜձࣾϥΠϑελΠϧσβΠϯ (LaFabricӡӦձࣾ) CTO தےৎਓ
தے ৎਓ גࣜձࣾϥΠϑελΠϧσβΠϯ CTO ུྺ - ্ࣗӴୂ ॏഭܸ๒෭๒ख - SIer
Πϯϑϥߏங/ۀγεςϜ։ൃͳͲ - MSP αʔϏεاը/ΠϯϑϥΤϯδχΞ - Amazon Distribution Center ΤϯδχΞ - ݱ৬ ࣗݾհ !UBLFOBLBTVKJ
LaFabricͱʁ εʔπɾγϟπΛओ࣠ͱͨ͠ΧελϜΦʔμʔͷϝϯζΞύϨϧECαʔϏεɻ ମͷαΠζΛొ͢Δ͜ͱͰɺ͋ͳ͚ͨͩͷ̍ணΛΦϯϥΠϯͰߪೖ͢Δ͜ͱ͕Ͱ͖·͢ɻ ϝʔΧʔͱ͓٬͞·ΛμΠϨΫτʹͭͳ͙͜ͱͰɺதؒྲྀ௨Λഉআͨ͠దਖ਼Ձ֨Ͱ͝ఏڙ͍ͯ͠·͢ɻ
Technology Stack • PHP 5.6ܥ and 7.1ܥ • CakePHP 2.xܥ
• Laravel 5.4ܥ ServerSide FrontEnd • Vue.js 2.xܥ • React 15.xܥ • jQuery etc • AWS • Github • CD Tools • Slack • Backlog • etc
ຊͷ༰ • ͢͜ͱ • ৽نγεςϜʹ͓͚ΔϑϨʔϜϫʔΫͷબఆ • ཁ݅ΛͲͷΑ͏ʹ·ͱΊͯͲ͏࡞Δ͔ • ͞ͳ͍͜ͱ •
DDDͷ • Ϣʔεέʔεਤͷ࡞Γํϩόωετੳͷख๏
ࠓճ࡞ͬͨγεςϜ ๓  ৫Γ ϝʔΧʔ ྲྀ ड ੍࡞ ൃ ݕɾग़ՙ
ൃૹ -B'BCSJDͱɺϝʔΧʔɺϩδεςΟΫεΛ࿈ܞ͢Δੜ࢈ཧγεςϜ ϨΨγʔͳۀք׳श͔Βͷ٫Λతʹ։ൃ ੜ࢈ཧ γεςϜ
Laravelબఆͷഎܠͱͦͷཧ༝
എܠ • ਓһతଆ໘ • ͜Ε·ͰCakePHP2.xܥ͕ϝΠϯ • વPHPerͳϝϯόʔߏ • ٕज़తଆ໘ •
CakePHP2.xܥऴᖼ(LTS͕ग़Δͱ͍͏…) • ϑΝοτίϯτϩʔϥɺϑΝοτϞσϧΛഉআ͍ͨ͠ • ࣄۀతଆ໘ • ظతʹར༻͍ͨ͠ • ࣄۀϑΣʔζʹݟ߹ͬͨࢿͳͷ͔ • όʔϯϨʔτɾϥϯΣΠͱͷݟ߹͍
νΣοΫͨ͠ • Github ελʔ • Google Trends • Model Directory͕ͳ͍
• ModelϏδωεϩδοΫͱ͖߹͏ • ։ൃεϐʔυ • SQLΛ࿈͍͢͠ORM • पғʹLaravelΛར༻͍ͯ͠Δاۀ͕ଟ͔ͬͨ • ࣄྫϋϚΓͲ͜ΖͳͲฉ͚Δ
ಋೖલͷݒ೦ͱରࡦ • ݸਓར༻Ҏલ͔Β͍͕ͯͨ͠ɺଞͷϝϯόʔͲ͏͔ αϯϓϧΞϓϦΛ࡞Γॻ͖ຯΛνΣοΫ • ࣗ༝ͱنͷόϥϯε GithubͰ͓खຊʹͳΔLaravelΞϓϦΛख़ಡ͠ϝϯόʔؒͰධ l5-repositoryͷಋೖ(ϦϙδτϦύλʔϯͷಋೖ)
ΞʔΩςΫνϟ 6TFDBTFT #VTJOFTT-PHJD 3FQPTJUPSZ %BUB4PVSDF %# $POUSPMMFS 7JFX "1* 3FRVFTU
3FTQPOTF ֤ϨΠϠʔͷͷ໌֬ԽɺҰํͳॲཧϑϩʔɺϨΠϠʔލ͗ͷېࢭ
Ϣʔεέʔεۦಈ։ൃ ͳͥϑϨʔϜϫʔΫͷͷ͋ͱʹϢʔεέʔεͳͷ͔ʁ
Ϣʔεέʔεۦಈ։ൃͱ ϢʔεέʔεΛىͱͯ͠γεςϜͷཱͪৼΔ͍ཁ݅Λఆٛͯ͠ ։ൃΛਐΊΔख๏ɻ ϢʔεέʔεɺΞΫλʔ(Ϣʔβʔ֎෦γεςϜ)Λ໌֬ʹ͠ɺΞ Ϋλʔͷৼ(ૢ࡞)Λఆٛ͢ΔɻʮͩΕ͕ʯʮͳʹΛ͢Δʯͱ͍͏γ ϯϓϧͳॻ͖ํͰʮΞΫλʔࢹͰγεςϜͷৼΛදݱ͢Δʯ͜ ͱɻڞ௨Խ͞Εͨίϛϡχέʔγϣϯखஈͱଊ͑Δ͜ͱͰ͖Δɻ
ΞʔΩςΫνϟ͓͞Β͍ 6TFDBTFT #VTJOFTT-PHJD 3FQPTJUPSZ %BUB4PVSDF %# $POUSPMMFS 7JFX "1* 3FRVFTU
3FTQPOTF Ӭଓతʹݟ௨͕͠ྑ͍ίʔυΛҡ࣋͠ɺϝϯςφϒϧͳγεςϜͰ͋Γଓ͚ ΔʹϢʔεέʔε͕؊৺
ϒϥϯίͷΛ͠Α͏
None
ͳͥ͜͏ͳΔͷ͔ʁ
͋Γ͕ͪͳ͜ͱ • ͍ͭͷؒʹ͔ग़དྷ্͕ͬͨಠࣗ༻ޠ • ಠࣗ༻ޠࣗମѱͰͳ͍ • ίϯςΫετͷڞ༗ͷ͠͞ • ංେԽ͢Δཁٻ •
ΤϯδχΞͷཁ݅ఆٛઐతͰΘ͔ΓͮΒ͍ • ͍͑ͨ͜ͱ͕ݴޠԽͰ͖͍ͯͳ͍ • ΤϯδχΞʹͲ͏͑ͨΒ͍͍͔Θ͔Βͳ͍ ͦͷଟ͘ϢʔεέʔεͷఆٛͰղܾͰ͖Δ
ྫɿࣗಈൢചػͷ։ൃ • ͓ۚΛೖΕͨΒߪೖͰ͖ΔΑ͏ʹ͍ͨ͠ • ྫྷ͍ͨҿΈͱԹ͔͍ҿΈΛൢച͍ͨ͠ • ͓ۚ1ԁۄͱ5ԁۄҎ֎શͯΛѻ͍͍ͨ • ߗ՟͕ೖ͞ΕΔͱfunction x͕ݺͼग़͞Εɺͦͷߗ՟ͷछྨΛ
ผͨ͠ޙʹfunction yΛ(ry
मਖ਼ɿࣗಈൢചػͷ։ൃ • ސ٬͓ۚΛೖ͢Δ • ސ٬ߪೖ͢ΔͷϘλϯΛԡ͢ • ࣗಈൢചػސ٬͕બͨ͠Λഉग़͢Δ ˞ͩΕ͕ΛᐆດʹͤͣΞΫλʔΛ༻͍ͯදݱ͢Δ ˞ϢʔβʔͳͲᐆດͳΞΫλʔ໊Λ༻͠ͳ͍ ิॆһϢʔβͩͬͨΓ
˞ΞΫλʔࢹͰͷৼͰهड़͢Δ ʮ͓ۚΛೖΕͨΒߪೖͰ͖ΔΑ͏ʹ͍ͨ͠ʯ ᐆດͳදݱείʔϓΛϢʔεέʔεΛ༻͍ͯղ͢Δ
Ϣʔεέʔε͕ᐆດͳϓϩάϥϜ function dischargeDrink() { // do something } υϦϯΫΛഉग़͢ΔػೳΛఆ ഉग़ʁʁ
ސ٬͕ߪೖͨ͠ΒυϦϯΫഉग़͞ΕΔ͕ɺೖΕସ͑࣌ʹิॆһ͕ഉग़ ͢Δ͜ͱ͋ΔͷͰ ࣮ࡍػցతͳૢ࡞͔ ͍ͣΕʹͤΑɺ͜ͷػೳ͕ͩΕʹͳʹΛఏڙ͍ͯ͠Δͷ͔Θ͔Βͳ͍ɻ
ΞʔΩςΫνϟ࠶ܝ 6TFDBTFT #VTJOFTT-PHJD 3FQPTJUPSZ %BUB4PVSDF %# $POUSPMMFS 7JFX "1* 3FRVFTU
3FTQPOTF ఆٛͨ͠ϢʔεέʔεΛγεςϜ্ͷϢʔεέʔεʹམͱ͠ࠐΉɻ ϢʔεέʔεγφϦΦϓϩάϥϜ্ͷϢʔεέʔε ˞γεςϜنʹԠͯ͡Ϣʔεέʔεਤϩόωετੳ༻͍Δ
·ͱΊ • ٕज़ͦͷͷͷධՁେࣄ͕ͩͦΕΛѻ͏ΤϯδχΞʹண͢ Δ • ڞ௨Խ͞ΕͨίϛϡχέʔγϣϯͰ൵͠Έͷͳ͍։ൃΛ • ϒϥϯίͷΛࢥ͍ग़ͨ͠ΒԿ͔͕ͣΕ͍ͯΔ࣌ɻҰཱͪฦΔ ͱྑ͍͔
࣭ٙԠ
ৄͪ͘͜͠Β http://lifestyledesign.co.jp/jobs/ We’re Hiring • αʔόʔαΠυΤϯδχΞ • ϑϩϯτΤϯυΤϯδχΞ • σβΠφʔ
ٕज़Λۦͯ͠ΞύϨϧۀքʹֵ໋Λى͍ͨ͜͠ํɺઈࢍืूதʂ