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
540
新規システムのための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.7k
Elementのすすめ
takenakasuji
0
3.9k
Vue.jsを使ったら幸せになった話
takenakasuji
1
3.9k
IoTで実現するリアルストア戦略
takenakasuji
0
1.9k
Other Decks in Technology
See All in Technology
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
8
940
単一Gitリポジトリから独立しました
lycorptech_jp
PRO
0
120
libsyncrpcってなに?
uhyo
0
160
CSSDay, Amsterdam
brucel
0
140
Babylon.jsでゲームを作ってみよう
limes2018
0
100
Java 30周年記念! Javaの30年をふりかえる
skrb
2
1.7k
Data Hubグループ 紹介資料
sansan33
PRO
0
1.8k
テストを実施する前に考えるべきテストの話 / Thinking About Testing Before You Test
nihonbuson
PRO
15
2.1k
令和最新版TypeScriptでのnpmパッケージ開発
lycorptech_jp
PRO
0
110
セキュリティSaaS企業が実践するCursor運用ルールと知見 / How a Security SaaS Company Runs Cursor: Rules & Insights
tetsuzawa
0
520
うちの会社の評判は?SNSの投稿分析にAIを使ってみた
doumae
0
340
ローカル環境でAIを動かそう!
falken
PRO
1
170
Featured
See All Featured
Music & Morning Musume
bryan
47
6.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
620
YesSQL, Process and Tooling at Scale
rocio
172
14k
Writing Fast Ruby
sferik
628
61k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Agile that works and the tools we love
rasmusluckow
329
21k
Fireside Chat
paigeccino
37
3.5k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Unsuck your backbone
ammeep
671
58k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
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 • αʔόʔαΠυΤϯδχΞ • ϑϩϯτΤϯυΤϯδχΞ • σβΠφʔ
ٕज़Λۦͯ͠ΞύϨϧۀքʹֵ໋Λى͍ͨ͜͠ํɺઈࢍืूதʂ