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
BASE の PHP アプリ アップデートについて
Search
tenkoma (Koji Tanaka)
March 20, 2018
Programming
0
4.3k
BASE の PHP アプリ アップデートについて
2018/03/14 ヒカ☆ラボ 【ベンチャー企業のリアルなPHP事情】 で発表した資料です。
tenkoma (Koji Tanaka)
March 20, 2018
Tweet
Share
More Decks by tenkoma (Koji Tanaka)
See All by tenkoma (Koji Tanaka)
PhpStormでコードを理解する技術 / How to use PhpStorm to understand the code
tenkoma_
0
3.2k
PhpStormとPHPUnitを連携してユニットテスト作成を楽にする ver.phpconsen / integrating-phpunit-with-a-phpstorm-ver-phpconsen
tenkoma_
0
3.9k
PhpStormとPHPUnitを 連携してユニットテスト 作成を楽にする / Integrating PHPUnit with a PhpStorm
tenkoma_
1
590
CakeFest 2019について / About CakeFest 2019
tenkoma_
0
3.9k
ユニットテストを書きやすくするためにテストスイートを拡張する / Extend test suite to make unit test easier to write
tenkoma_
0
2.6k
CircleCI 2.0 で CakePHP3 アプリのビルド
tenkoma_
0
1.9k
GitLab CI + Review Apps で簡易レビュー環境
tenkoma_
4
3k
CakePHP プロジェクトにプルリクを送り続けた僕は
tenkoma_
0
630
Webpack勉強会 JavaScriptビルド編
tenkoma_
1
1.9k
Other Decks in Programming
See All in Programming
Kubernetes for Data Engineers: Building Scalable, Reliable Data Pipelines
sucitw
1
110
Serverless renderování Webových komponent
rarous
PRO
0
140
Workflow automationによるインシデント原因調査の自動化
showwin
1
110
GrafanaのHTTP API を眺めてみよう
rinchoku
0
520
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
110
Hi, have you met Kotlin Multiplatform? | DevFest Vienna 2024
prof18
0
240
モジュラモノリス、その前に / Modular monolith, before that
euglena1215
8
750
OpenTelemetryでRailsのパフォーマンス分析を始めてみよう(KoR2024)
ymtdzzz
1
240
CSC305 Lecture 09
javiergs
PRO
0
120
How to debug Xdebug... or any other weird bug in PHP
dunglas
2
1.5k
LangChain & LangServeでAPIを爆速作成
kijitorabuti
2
370
gopls を改造したら開発生産性が高まった
satorunooshie
7
140
Featured
See All Featured
A better future with KSS
kneath
237
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
13
1.8k
Ruby is Unlike a Banana
tanoku
96
11k
Thoughts on Productivity
jonyablonski
67
4.3k
Being A Developer After 40
akosma
85
590k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
31
1.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
Fireside Chat
paigeccino
32
3k
Typedesign – Prime Four
hannesfritz
39
2.4k
The World Runs on Bad Software
bkeepers
PRO
65
11k
GraphQLとの向き合い方2022年版
quramy
43
13k
Scaling GitHub
holman
458
140k
Transcript
#"4&ͷ1)1ΞϓϦ Ξοϓσʔτʹ͍ͭͯ ,PKJ5BOBLB !UFOLPNB #"4&גࣜձࣾ ώΧˑϥϘ ϕϯνϟʔاۀͷϦΞϧͳ1)1ࣄ
ࣗݾհ w ,PKJ5BOBLB!UFOLPNB w ੜࣛࣇౡग़ w #MPHIUUQTUFOLPNBIBUFOBCMPHDPN w (JU)VCIUUQTHJUIVCDPNUFOLPNB w
#"4&גࣜձࣾʹαʔόʔαΠυΤϯδχΞͱ ͯ͠ೖࣾ
࣍ #"4&ʹ͍ͭͯʗ1)1ɾ$BLF1)1ͷར༻ ͳͥ1)1$BLF1)1Ξοϓσʔτ͢Δͷ͔ աڈͷऔΓΈ ΞοϓσʔτʹऔΓΉνʔϜͱઓུ
$BLFΞϓϦʹݶΒͣ ͘։ൃɾӡ༻͍ͯ͠Δ 1)1ΞϓϦΛΞοϓσʔτ ͢Δͱ͖ͷࢀߟʹͳΕ
#"4&ʹ͍ͭͯ 1)1ɾ$BLF1)1ͷར༻
#"4&ʹ͍ͭͯ w ϦϦʔε w ωοτγϣοϓ࡞αʔϏε ʮ#"4&ʯ w ʮ͓͞Μ͑Δʯ͕ί
ϯηϓτ w γϣοϐϯάΞϓϦʮ#"4&ʯ w ສϢʔβʔ͕ར༻͢Δ εϚʔτϑΥϯΞϓϦ
#"4&ʹ͓͚Δ 1)1$BLF1)1 ଟ͘ͷαʔϏεͰ1)1ͱ$BLF1)1YΛར༻ w ωοτγϣοϓ࡞αʔϏε#"4& w γϣοϐϯάΞϓϦʮ#"4&ʯ༻ͷ"1* w ཧը໘ʢόοΫΦϑΟεʣ w
όονॲཧ
ͳͥ1)1$BLF1)1 ΛΞοϓσʔτ͢Δͷ͔
ͳͥΞοϓσʔτ͢Δͷ͔ w ࣌Ͱ1)1ͩͬͨ ެࣜͰʹαϙʔτऴྃ $FOU04ύοέʔδʗηΩϡϦςΟमਖ਼͞ΕΔ w $BLF1)1গ͠ݹͯ͘αʔϏε͝ͱʹόʔδϣϯ͕ҟͳΔɻ ܥ࠷৽ͷʹ͠ͳ͍ͱෆ۩߹मਖ਼͞Εͳ͍ w
1)1ʹ͢Δͱ͘ͳΔ ϞόΠϧΞϓϦͷόοΫΤϯυ͕ຊʹ͔ͬͨ w 1)1ͷ৽͍͠ػೳɾߏจ͕͑ͳͯ͘ΤϯδχΞͷϞνϕʔ γϣϯ͕Լ͕Δ
ηΩϡϦςΟ εϐʔυ ΤϯδχΞͷϞνϕʔγϣϯ
աڈͷऔΓΈ ࣦഊ w ʹ$BLF1)1ΛΞοϓσʔτ w ޙʹෆ۩߹͕ൃ֮ͯ͠ݩͷόʔδϣϯʹͨ͠ w ಛఆ݅Ͱจৄࡉϖʔδ͕දࣔͰ͖ͳ͍ w ͋Δ͕ؔྫ֎Λ͛Δ༷ʹมΘΓɺಈ࡞ʹӨڹͨ͠
w ΞοϓσʔτͷऔΓΈ͕Ұ୴ετοϓ
աڈͷऔΓΈ ࣦഊ w ʙʹϲ݄͔͚ͯόʔδϣϯؒͷࠩΛ͢ ͯௐͯӨڹ͕͋Δͱ͜Ζɾվम͕ඞཁͳͱ͜ΖΛυ ΩϡϝϯτԽ w ʜ͕ɺΞοϓσʔτʹ౿ΈΕͣ w ,1*ୡαʔϏεվળ࠷༏ઌͰΞοϓσʔτʹ·Ͱे
औΓΊͳ͍ঢ়گ
ΞοϓσʔτʹऔΓΉ νʔϜͱઓུ
1)1$BLF1)1 ΞοϓσʔτʹऔΓΉνʔϜ w Ϛωʔδϟʔ໊ w ΞοϓσʔτઐΤϯδχΞ໊ w Ξοϓσʔτ݉ΤϯδχΞ໊ ֤։ൃηΫγϣϯ͔Β໊
ݱࡏͷνʔϜ ʙ ϓϥοτϑΥʔϜ ܾࡁ ϞόΠϧΞϓϦόοΫΤϯυ 43&
໘ͷඪ #"4&ͷ8FCΞϓϦέʔγϣϯΛಈ͔͢ ڥΛ1)1 $BLF1)1ʹ͢Δ
େ·͔ͳྲྀΕ ࡞ۀ͕͍͢͠Α͏%PDLFSͰ։ൃڥΛ࡞ $*Λಋೖͯ͠ɺෆ͍ͯ͠ΔςετίʔυΛՃ $PNQPTFSಋೖ 1)1ˠ $BLF1)1 1)1ˠ
%PDLFS։ൃڥ
%PDLFS։ൃڥ w ڞ༻ͷ։ൃ༻αʔόʹ֤ελοϑ༻ͷڥΛ࡞ͬͯ࡞ۀͯ͠ ͍ͨ ڥߏஙखॱൿͷλϨԽ͍ͯͨ͠ w ҟͳΔ1)1ͷόʔδϣϯͰಈ࡞ݕূΛ͠ͳ͕Β࡞ۀΛਐΊ ΔͷͰɺؾܰʹΓସ͑ΒΕΔ%PDLFSڥ͕͋Δͱָ w
ϢχοτςετͳͲϚγϯෛՙ͕ߴ͘ͳΔॲཧΛ࣮ߦ͠ ͍͢ w ΧελϜͨ͠ΠϝʔδΛ"84&$3ʹϗετ EPDLFS DPNQPTFͰߏɾૢ࡞
%PDLFS։ൃڥಋೖޙ w ػೳՃͳͲͷ։ൃ͘͢͠ͳͬͨ w "QBDIFͳͲϛυϧΣΞͷઃఆมߋ͕؆୯ʹͳͬͨ w σΟεΫΞΫηε͕͍͕ڐ༰ w ֎෦"1*࿈ܞɺσʔλϕʔεεΩʔϚͷөͳͲ՝ͬ ͍ͯΔ
$* ܧଓతΠϯςάϨʔγϣϯ ͷಋೖ
$* ܧଓతΠϯςάϨʔγϣϯ w ιʔείʔυΛมߋͨ͠ͱ͖ʹΞϓϦέʔγϣϯશମ͕յ Εͯͳ͍͔νΣοΫ͢ΔαʔϏε w $JSDMF$*Λಋೖ w (JU)VCʹQVTIˠςετΛࣗಈ࣮ߦ
ςετ݁Ռ
ΞοϓσʔτͷͨΊʹςετΛՃ w શ෦ͷΫϥεɾϝιουʹςετΛॻ͘ͱ͕͔͔Γ͢ ͗Δ w ༷Խςετ $IBSBDUFSJ[BUJPO5FTU Λॻ͘ w ݱࡏͷΞϓϦέʔγϣϯΛ࣮ߦͤ͞ɺ݁ՌΛਖ਼͍͠
ͷͱͯ͠ݕূ͢Δ ݱࡏͷΞϓϦέʔγϣϯΛ༷Խ͢ Δςετ
None
w γΣϧͷςετ͕υΩϡϝϯτʹॻ͍ͯͳ͍ˠίΞͷς ετίʔυΛಡΜͰਅࣅΛ͢Δ ΞοϓσʔτͷͨΊʹςετΛՃ
None
w ΑΓଟ͘ͷਖ਼ৗܥίʔυ͕ςετ͞ΕΔ͜ͱΛॏࢹɻΧό ϨοδϨϙʔτΛݟͳ͕Β࡞ۀ w BQQ$POTPMFDBLFUFTUBQQ"MM5FTUTDPWFSBHF IUNMSFQPSUT ΞοϓσʔτͷͨΊʹςετΛՃ
ࢀߟจݙ༷Խςετ w ʮϨΨγʔίʔυվળΨΠυʯͷεεϝ ୈճɿίʔυΛཧղ͢ΔͨΊɺ༷ԽςετͰจॻԽ͢ Δ w IUUQTDPEF[JOFKQBSUJDMFEFUBJM w .JDIBFM'FBUIFSTஶϧγεςϜζגࣜձࣾ༁ʰϨ ΨγʔίʔυվળΨΠυʱᠳӭࣾ
$*ɾςετಋೖޙ w Ϣχοτςετ͕ॻ͔Ε͍ͯΔ෦͕յΕͯͳ͍͔͙͢Θ ͔ΔΑ͏ʹͳͬͨ w ػೳՃɾվमͷͱ͖ʹςετҰॹʹίϛοτ͞ΕΔ͜ ͱ͕૿͑ͨ w ίϯςφ ଟ͍΄ͲϏϧυΛಉ࣌ʹ࣮ߦͰ͖Δ
͕ ݸˠݸʹ૿ͯ͠Βͬͨ
$PNQPTFSಋೖ
DPNQPTFSಋೖ w 1)1ϥΠϒϥϦͷґଘཧɾηοτΞοϓπʔϧ w $BLF1)1͕$PNQPTFSલఏͰͳ͔ͬͨ͜ͱ͋Γ ·Ͱಋೖͯ͠ͳ͔ͬͨ w ݸҎ্ͷ$BLF1)1ϓϥάΠϯ͕ݸผͷ(JU)VCϦϙδ τϦʹ͋ͬͨɻϓϥάΠϯNBTUFSͷ࠷৽͔͠σϓϩΠ Ͱ͖ͳ͔ͬͨɻ
w ։ൃڥͷ४උɾߋ৽ʹ͕͔͔࣌ؒΔ
QIQDPOͰհ IUUQTHPPHME$$HQ
$PNQPTFSಋೖ w ϥΠϒϥϦΛআ͔ͯ͠ΒDPNQPTFSSFRVJSFͰͭͣ ͭՃ
$PNQPTFSಋೖ w ґଘϥΠϒϥϦͷҠߦྃ w ࣾͰཧ͍ͯ͠ΔϓϥάΠϯΛόʔδϣϯΛݻఆͯ͠σ ϓϩΠͰ͖ΔΑ͏ʹͳͬͨ w HJUQVMMDPNQPTFSJOTUBMM
1)1$BLF1)1 Ξοϓσʔτ
1)1ˠ w 1)1$PNQBUJCJMJUZ$PEJOH4UBOEBSEGPS1)1 $PEF4OJ⒎FSͰޓੑνΣοΫ w NFNDBDIF֦ு͕1)1Ͱআ͞ΕΔͷͰ NFNDBDIFE֦ுΛ͏Α͏มߋ w ϦϦʔε࣌ʹ1)1ύοέʔδΛ$FOU04όϯυϧˠ SFNJϦϙδτϦ
ઌिɺϢʔβʔ͕ར༻͢ΔαΠτͯ͢1)1Ҏ্ʹ
1)1ˠ w 1)1ͷॲཧׂ͕࣌ؒݮʹ /FX3FMJD w ͨͩ͠ɺ"QBDIF $FOU04 &$ΠϯελϯελΠϓಉ࣌ʹมߋ͍ͯ͠Δ ͷͰɺ1)1ΞοϓσʔτࣗମͷޮՌ͕ͲΕ΄Ͳ͔ෆ໌
$BLF1)1Y w ҠߦΨΠυʹΛ௨͢ IUUQTCPPLDBLFQIQPSHKBBQQFOEJDFTIUNM w ʮDPNQPTFSSFRVJSFDBLFQIQDBLFQIQz zʯ w $BLF1)1·Ͱʹ1)1ରԠͰ0CKFDU4USJOHΫϥ ε͕ͦΕͧΕ$BLF0CKFDU$BLF5FYUʹมߋ
1)1ͷ༧ޠʹͳͬͨͨΊ w ׂ͘Β͍ͷαʔϏεͰҠߦࡁΈ
1)1ˠ w QIQDDͰޓੑνΣοΫ w ҠߦΨΠυʹҰΛ௨͢ IUUQQIQOFUNBOVBMKBNJHSBUJPOQIQ w $BLFݻ༗ͷมߋϝιουγάωνϟͷݫີԽͰඞཁʹͳΔमਖ਼ w $BLF1)1ͷCFGPSF7BMJEBUF
BGUFS4BWFγάωνϟมߋʹର Ԡ͢Δ w ͪ͜ΒׂͷαʔϏεͰҠߦࡁΈ
ฒΈἧ͑ͳ͕Βॱ൪ʹ ͬͨΘ͚Ͱͳ͍ w 2ͱΓ͋͑ͣ$JSDMF$*ಋೖɺϞόΠϧόοΫΤϯυͷςετΛ$*Ͱ࣮ߦ w ج൫νʔϜ 1)1$BLF1)1όʔδϣϯΞοϓਪਐ͢ΔνʔϜ Λ݁ w ʙ%PDLFS։ൃڥߏங
w ࠷ॳͷΞϓϦ͕1)1 $BLF1)1ʹͳΔ w ϞόΠϧΞϓϦͷόοΫΤϯυ͕1)1 $BLF1)1ʹ w શΞϓϦ͕1)1Ҏ্ʹ نͷখ͍͞ͷɺΓ͍͢ͷ͔Βྃͤ͞Δ ޙͷܭըཱ͕ͯ͘͢ͳΓɺϞνϕʔγϣϯ্͕Δ
$BLF1)1ίΞʹෆ۩߹Λݟ͚ͭΔ ςετػೳ 1)1ରԠΛϓϧϦΫΤετ
·ͱΊ w ίʔυϕʔε͕খنͳαʔϏε͔ΒΞοϓσʔτ w ࣄલʹҠߦΨΠυʹΛ௨ͯ͠࡞ۀ࣌ͷϋϚΓΛݮΒ͢ w ༷Խςετ$*Ͱಈ࡞Λอূ͢Δ w ςετจԽͷৢͳ͔ͳ͔େม w
Γ͖Δؾ࣋ͪ
&$ͷະདྷΛҰॹʹͭ͘Δ ΤϯδχΞΛืू͍ͯ͠·͢ KPCTCJODKQ