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
470
新規システムのための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.3k
Elementのすすめ
takenakasuji
0
3.7k
Vue.jsを使ったら幸せになった話
takenakasuji
1
3.8k
IoTで実現するリアルストア戦略
takenakasuji
0
1.9k
Other Decks in Technology
See All in Technology
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
ソフトウェアエンジニアリングの知見を活かして データ基盤をいい感じにする on Snowflake [MIERUNE BBQ #10]
mtpooh
2
150
データベース研修 DB基礎【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
210
ギークの理想が7つ集まるエムスリーで夢を叶えよう - エムスリー株式会社
m3_engineering
1
260
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
セキュリティ研修 Day1【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
ここがすごいよ! AWS Systems Manager!
saichan11
0
1.8k
Git 研修 Advanced【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
200
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
AIアシスタントの活用で品質の向上と開発ワークフローのスピードアップ
nagix
1
200
「我々はどこに向かっているのか」を問い続けるための仕組みづくり / Establishing a System for Continuous Inquiry about where we are
daitasu
0
170
【基調講演】変える、今ここから ― IoTとAIで紡ぐ未来
soracom
PRO
0
320
Featured
See All Featured
Scaling GitHub
holman
458
140k
Embracing the Ebb and Flow
colly
81
4.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
262
13k
Raft: Consensus for Rubyists
vanstee
134
6.5k
Being A Developer After 40
akosma
72
580k
Principles of Awesome APIs and How to Build Them.
keavy
124
16k
Six Lessons from altMBA
skipperchong
24
3.2k
Done Done
chrislema
179
15k
How to name files
jennybc
67
96k
Rails Girls Zürich Keynote
gr2m
93
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
34
1.9k
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 • αʔόʔαΠυΤϯδχΞ • ϑϩϯτΤϯυΤϯδχΞ • σβΠφʔ
ٕज़Λۦͯ͠ΞύϨϧۀքʹֵ໋Λى͍ͨ͜͠ํɺઈࢍืूதʂ