Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
BASE の PHP アプリ アップデートについて
tenkoma (Koji Tanaka)
March 20, 2018
Programming
0
3.7k
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
2.6k
PhpStormとPHPUnitを連携してユニットテスト作成を楽にする ver.phpconsen / integrating-phpunit-with-a-phpstorm-ver-phpconsen
tenkoma_
0
3.3k
PhpStormとPHPUnitを 連携してユニットテスト 作成を楽にする / Integrating PHPUnit with a PhpStorm
tenkoma_
1
460
CakeFest 2019について / About CakeFest 2019
tenkoma_
0
3.4k
ユニットテストを書きやすくするためにテストスイートを拡張する / Extend test suite to make unit test easier to write
tenkoma_
0
2.1k
CircleCI 2.0 で CakePHP3 アプリのビルド
tenkoma_
0
1.6k
GitLab CI + Review Apps で簡易レビュー環境
tenkoma_
4
2.7k
CakePHP プロジェクトにプルリクを送り続けた僕は
tenkoma_
0
530
Webpack勉強会 JavaScriptビルド編
tenkoma_
1
1.6k
Other Decks in Programming
See All in Programming
GoogleI/O2022 LT報告会資料
shinsukefujita1126
0
330
GitHub Actions を導入した経緯
tamago3keran
1
430
【Scrum Fest Osaka 2022】スクラムチームに放り込まれた若手エンジニアの皆さん、どのように技術のキャッチアップをしていくかイメージはついていますか?
miiiki
0
110
UI Testing of Jetpack Compose Apps, AppDevCon
alexzhukovich
0
160
パターンマッチングを学んで新しいJavaの世界へ!Java 18までの目玉機能をおさらいしよう / Java 18 pattern matching
ihcomega56
3
400
1時間半で克服するJavaScriptの非同期処理/async_javascript_kokufuku
marchin1989
2
620
即、New Relic / New Relic NOW!
uzulla
0
330
How we run a Realtime Puzzle Fighting Game on AWS Serverless
falken
0
250
Client-Side Field-Level Encryption for Apache Kafka Connect @ VoxxedDays Luxembourg 2022
hpgrahsl
0
110
Improving Developer Experience Through Tools and Techniques 2022
krzysztofzablocki
0
530
Managing Error Messages with your Oracle Database REST APIs
thatjeffsmith
0
130
GitHubのユーザー名を変更した後のあれこれ
tahia910
0
130
Featured
See All Featured
A Tale of Four Properties
chriscoyier
149
21k
Creatively Recalculating Your Daily Design Routine
revolveconf
207
10k
No one is an island. Learnings from fostering a developers community.
thoeni
9
1.3k
Building Adaptive Systems
keathley
25
1.1k
In The Pink: A Labor of Love
frogandcode
131
21k
5 minutes of I Can Smell Your CMS
philhawksworth
196
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
498
130k
Teambox: Starting and Learning
jrom
123
7.7k
A designer walks into a library…
pauljervisheath
196
16k
What's in a price? How to price your products and services
michaelherold
229
9.4k
How to train your dragon (web standard)
notwaldorf
58
3.9k
4 Signs Your Business is Dying
shpigford
169
20k
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