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
レガシーなPHPの限界とレガシーからの脱却 / phpcon2019
Search
shmurakami
December 01, 2019
Technology
2
3.6k
レガシーなPHPの限界とレガシーからの脱却 / phpcon2019
PHPConference Japan 2019
shmurakami
December 01, 2019
Tweet
Share
More Decks by shmurakami
See All by shmurakami
サーバーサイドから見るChatworkの現状と未来 / Now and future of Chatwork from server side perspective
shmurakami
3
1.3k
php grpc-client in phpcon2018
shmurakami
0
1.7k
lumen e2e test
shmurakami
0
1.1k
decoded_php.pdf
shmurakami
3
790
良心的にまじめに開発するための心構え
shmurakami
0
180
TypeScriptでKnockoutを書いてみた
shmurakami
3
1.3k
社内勉強会資料 PHPプロジェクトでのJavaScript
shmurakami
0
670
社内勉強会資料 JavaScriptの基本 その1
shmurakami
5
1.8k
Other Decks in Technology
See All in Technology
あなたのWebサービスはAIに自動テストしてもらえる?アクセシビリティツリーで読み解く、AIの『視点』
yusukeiwaki
1
3.4k
WebアプリケーションのUI構築で気を付けてるポイント
tomokusaba
0
200
Railsアプリケーション開発者のためのブックガイド
takahashim
13
5.3k
非エンジニアのあなたもできる&もうやってる!コンテキストエンジニアリング
findy_eventslides
3
850
Tomorrow graphlib, Let us use everybody
hayaosuzuki
0
150
AI×Data×SaaS×Operation
sansantech
PRO
0
110
PyCon JP 2025 DAY1 「Hello, satellite data! ~Pythonではじめる衛星データ解析~」
ra0kley
0
830
5年間のFintech × Rails実践に学ぶ - 基本に忠実な運用で築く高信頼性システム / 5 Years Fintech Rails Retrospective
ohbarye
9
3.6k
Go Conference 2025: GoのinterfaceとGenericsの内部構造と進化 / Go type system internals
ryokotmng
3
540
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
290
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
240
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
300
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.8k
Become a Pro
speakerdeck
PRO
29
5.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
GitHub's CSS Performance
jonrohan
1032
460k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
For a Future-Friendly Web
brad_frost
180
9.9k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Fireside Chat
paigeccino
40
3.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Done Done
chrislema
185
16k
Transcript
$IBUXPSLͷγεςϜ͔ΒֶͿ ϨΨγʔͳ1)1ͷݶքͱϨΨγʔ͔Βͷ٫ 1)1$POGFSFODF+BQBO
© Chatwork ࣗݾհ ˔͠Ό͔TIBLB ଜ্ढ़հ ˔$IBUXPSLגࣜձࣾ ˔1)1ྺ4DBMBྺOϲ݄ ˔1)1Ͱ*46$0/ຊબҐ
© Chatwork $IBUXPSLʹ͍ͭͯ ˔ϏδωενϟοταʔϏε ˓άϧʔϓνϟοτ λεΫཧ ϑΝΠϧڞ༗ ϏσΦԻ௨ ˔ಋೖاۀ ࣾҎ্
݄ݱࡏ
© Chatwork "HFOEB ˔͜ͷൃදͰͷϨΨγʔίʔυͷఆٛ ˔$IBUXPSLͷόοΫΤϯυߏ ˔ϨΨγʔͳ1)1ͷݶք ˔ϨΨγʔ͔Βͷ٫
© Chatwork ϨΨγʔίʔυͷఆٛ
© Chatwork ϨΨγʔίʔυͷఆٛ ʮςετ͕ͳ͍ίʔυʯ ϨΨγʔίʔυվળΨΠυ. גࣜձࣾᠳӭࣾ, 2009
© Chatwork ϨΨγʔίʔυͷఆٛ ʮॊೈੑͷͳ͍ίʔυʯ ʮςετ͞Ε͍ͯͳ͍ίʔυʯ ʮٕज़తෛ࠴Λ๊͍͑ͯΔίʔυʯ ϨΨγʔιϑτΣΞվળΨΠυ. גࣜձࣾᠳӭࣾ, 2016, 7p
© Chatwork ϨΨγʔίʔυͷఆٛ ʮमਖ਼ɺ֦ுɺ࡞ۀ͕ ɹɹඇৗʹ͍͠ίʔυʯ ϨΨγʔίʔυ͔Βͷ٫. ΦϥΠϦʔɾδϟύϯ, 2019, xiii
© Chatwork ͜ͷൃදͰͷϨΨγʔίʔυͷఆٛ ʮमਖ਼ɺ֦ுɺ࡞ۀ͕ ɹɹඇৗʹ͍͠ίʔυʯ ϨΨγʔίʔυ͔Βͷ٫. ΦϥΠϦʔɾδϟύϯ, 2019, xiii
© Chatwork ChatworkͷόοΫΤϯυߏ
© Chatwork γεςϜߏ֓ཁ OSQT NT
© Chatwork $IBUXPSLʹ͓͚ΔαʔόʔαΠυ ˔ όʔδϣϯY ˓ ࠓͰ&0-Ͱ͢Ͷ ˔ લʹ࡞ΒΕͨΦϨΦϨϑϨʔ ϜϫʔΫ
˔ ڊେͳϞϊϦε ˔ Α͋͘Δ5)&ϨΨγʔ ˓ ҉ͱྺ࢙తܦҢ͕ͨ͘͞Μ ˓ ͍ΖΜͳਓͷࢥ͕ࠞ͡Γ߹ͬ ͨྺ࢙͕ਂ͍ϨΠϠʔ ˔ .JDSPTFSWJDFTνοΫ ˔ ࢄγεςϜࢤ ˓ )#BTF ˓ %ZOBNP%# ˓ ,BGLB ˔ ϦΞΫςΟϒγεςϜ ˓ &WFOU4PVSDJOH ˓ $234
© Chatwork $IBUXPSLʹ͓͚ΔαʔόʔαΠυ IUUQTDSFBUPSTOPUFDIBUXPSLDPNFOUSZTDBMBZFBS
© Chatwork $IBUXPSLʹ͓͚ΔαʔόʔαΠυ $IBUXPSLͰલʹɺ1)1ͷಠࣗϑϨʔϜϫʔΫͰͭ͘ ΒΕͨେنγεςϜΛɺ4DBMBΛͬͯθϩϕʔεͰͭ͘Γͳ͓ ͢ͱ͍͏ܾஅΛ͠·ͨ͠ɻ ͜͜ͰͳΜͱ͔͠ͳ͍ͱαʔϏε͕কདྷతʹࢮ͵ɺͱഎਫͷਞ ͰΜͩϓϩδΣΫτͰͨ͠ IUUQTDSFBUPSTOPUFDIBUXPSLDPNFOUSZTDBMBZFBS
© Chatwork $IBUXPSLʹ͓͚ΔαʔόʔαΠυ $IBUXPSLͰલʹɺ1)1ͷಠࣗϑϨʔϜϫʔΫͰͭ͘ ΒΕͨେنγεςϜΛɺ4DBMBΛͬͯθϩϕʔεͰͭ͘Γͳ͓ ͢ͱ͍͏ܾஅΛ͠·ͨ͠ɻ ͜͜ͰͳΜͱ͔͠ͳ͍ͱαʔϏε͕কདྷతʹࢮ͵ɺͱഎਫͷਞ ͰΜͩϓϩδΣΫτͰͨ͠ IUUQTDSFBUPSTOPUFDIBUXPSLDPNFOUSZTDBMBZFBS
ϨΨγʔͳγεςϜࢮ͵
© Chatwork 1)1ΞϓϦέʔγϣϯͷͭΒΈ ˔ϝϯςφϯε͕ͭΒ͍ঢ়ଶ ˓ڊେͳϞϊϦεϓϩδΣΫτɺສߦͷ6UJMΫϥε ˓ݹ͍ΦϨΦϨϑϨʔϜϫʔΫ ˙Ϟμϯͳ੩తղੳπʔϧͷద༻͕͍͠ ˓҉ͱྺ࢙తܦҢ ཻ͕·ͪ·ͪͳυΩϡϝϯτ ˔͕ೖΓࠞ͡Γׂ͍͕͗ͯͯ͢ࠔ
˓ςετ͋Δ͕ʮෳͷΛຬͨ͢͜ͱʯͷ୲อ͕େม ˔$IBUXPSLͱ1)1ͱࢲ 1)1$POGFSFODF IUUQTTQFBLFSEFDLDPNUBOBLBZVLJDIBUXPSLUPQIQUPTJ
© Chatwork ੩తղੳπʔϧ ˔1)14UBO ˓143 $PNQPTFSʹରԠ͍ͯ͠ͳ͍Օॴ͕͋Γઃఆ͕ࠔ ˔1IBO ˓QIQBTU֦ு͕ඞਢ ˓࠷ۙ·Ͱ1)1͕Քಇ͍ͯͨ͠ͷͰಋೖͰ͖ͳ͔ͬͨ ˔4POBS2VCF
˓େ͖͍ϑΝΠϧʹରͯ͠ಈ͔͢ͱEPDLFSίϯςφ͕མͪΔ ˓॥తෳࡶͳͲऔΕΔ͕ɺཉ͍͠σʔλͦΕ͡Όͳ͍ ˔1IQ.FUSJDT ˓ಈ͔ͤͨ
© Chatwork 1IQ.FUSJDT
© Chatwork 1IQ.FUSJDT 1BDLBHF 0CKFDUϨϕϧͰͷϝτϦΫε ؔ࿈ ਤ͕औಘՄೳ
© Chatwork Package relations by PhpMetrics
© Chatwork Ͳ͏ͯ͜͠͏ͳͬͨʁ ˔༏ઌͰ։ൃΛଓ͚͖ͯͨ෭࡞༻ ˓ελʔτΞοϓͰͨΓલͷݱ ˔Ϗδωε͕֦େͨ͠λΠϛϯάͰ༷Λݫ֨Խ͠ͳ͔ͬͨ ˓ͱͱࣾπʔϧͩͬͨ ˓ᐆດͳ༷͕ᐆດͳ༷ΛੜΉѱ॥ ˔աڈʹίʔυͷվળʹࣦഊͨ͠ ˓શମతͳ4DBMBԽʹҰࣦഊ͠ɺ෦తʹ͔͠ҠߦͰ͖
͍ͯͳ͍ ˓4DBMBԽͨ͠෦ͷઃܭ1)1ʹҾ͖ͣΒΕΔ
© Chatwork ϨΨγʔͳPHPͷݶք
© Chatwork ʮमਖ਼ɺ֦ுɺ࡞ۀ͕ ɹɹඇৗʹ͍͠ίʔυʯ
© Chatwork ࠔͳมߋ ˔ϓϩδΣΫτͷن͕େ͖͘ɺΞʔΩςΫνϟɾઃܭͷେ نͳมߋ͕ࠔ ˓%#ͷׂɺεέʔϧΞτ ˓ϦϙδτϦׂ ˓1MBJO1)1ʹΑΔಉظॲཧલఏͷ༷ ˙ࠓ͔Β4XPPMF "NQͷಋೖʜ
˓֎෦αʔϏεͷҠߦ ˙ݱͳΒ4 -BNCEBͰࡁΉ"1*͋Δ
© Chatwork ϨΨγʔγεςϜͷݶք ʮࠔΛׂͤΑʯ
© Chatwork ࠔͳมߋ ˔ϓϩδΣΫτͷن͕େ͖͘ɺΞʔΩςΫνϟɾઃܭͷม ߋ͕ࠔ ˓%#ͷׂɺεέʔϧΞτ ˓ϦϙδτϦׂ ˓1MBJO1)1ʹΑΔಉظॲཧલఏͷ༷ ˙ࠓ͔Β4XPPMF "NQͷಋೖʜ
˓֎෦αʔϏεͷҠߦ ˙ݱͳΒ4 -BNCEBͰࡁΉ"1*͋Δ
© Chatwork Growth Scale Out Scale Up ❌
© Chatwork ϨΨγʔγεςϜ͕ݶքΛܴ͑ΔλΠϛϯά ˔αʔϏεΛܧଓ্͍ͯ͘͠Ͱى͜Δ͜ͱ ˓૿͑ଓ͚ΔϢʔβʔ ˓ϦΫΤετͷ૿Ճ ˓%#εέʔϧΞοϓͷݶքΛܴ͑Δ εέʔϧΞτࠔ ˓%#ίωΫγϣϯͷݶքΛܴ͑Δ
˓ϦΫΤετ͕ॲཧෆՄೳʹͳΔ ˔ΞϓϦέʔγϣϯϨΠϠʔͰରॲͰ͖ͳ͍ϛυϧΣΞͷੑ ೳݶքΛܴ͑Δ
© Chatwork Կ͕ͳͷ͔ ˔1)1͘ͳ͍͠ѱ͘ͳ͍ ˓1)1ѱ͘ͳ͍͘͠ͳ͍ େࣄ ˔ࣗࣾϑϨʔϜϫʔΫϨΨγʔ͕ͩ͘ͳ͍ ˓ ඞཁͳػೳ͕ແ͍ͱݴ͑Δ
˓ྲྀߦΓ͔ͩΒͱ-BSBWFMͳͲॏްͳϑϨʔϜϫʔΫʹ Γ͑ΔͱύϑΥʔϚϯε͕ग़ͳͯ͘αʔϏε͕མͪΔ ˔$IBUXPSLͷαʔϏεنʹ1)1͕ద߹͠ͳ͘ͳͬͨ ˓ͦΖͦΖ%#ίωΫγϣϯϓʔϧ͕ཉ͍͠ ˓O,SQTΛಉظॲཧͷݴޠͰॲཧ͢Δͷ͍͠ ˙+7. (P &SMBOH7.ͳͲ͕ద
© Chatwork ϨΨγʔ͔Βͷ٫ in Chatwork
© Chatwork ϨΨγʔ͔Βͷ٫ ˔5P%P ˓αʔϏεͷޓੑΛอͪͭͭ։ൃΛָʹ͠ͳ͕Β ˓ࠓͷഒͷτϥϯβΫγϣϯΛॲཧՄೳʹ͠ ˓৫ʹεέʔϥϏϦςΟΛ࣋ͨͤΔ
© Chatwork ٻΊΒΕ͍ͯΔͷ ˔ଈԠੑ ˓ߴͳϨεϙϯε ˔ྗੑ ˓ߴՄ༻ੑ ˔োੑ ˓γεςϜোͷہॴԽߴՔಇ
© Chatwork ϦΞΫςΟϒγεςϜ ग़య: ϦΞΫςΟϒએݴ ˔$IBUXPSLͷ৽ϝοηʔδϯάγεςϜΛࢧ͑Δٕज़ IUUQTTQFBLFSEFDLDPNKJLPDIBUXPSLGBMTFYJO NFUVTF[JOHVTJTVUFNVXP[IJFSVKJTIV
© Chatwork εέʔϧΞτ ˔γεςϜͱ৫ΛεέʔϧΞτ͢ΔΈ ˓γεςϜ͚ͩεέʔϧΞτͯ͠ϝϯςφϯεͰ͖Δ ମ੍͕͍ͬͯͳ͍ͱ࣋ଓͰ͖ͳ͍ ˙ίϯΣΠͷ๏ଇ ˓৫ͷεέʔϧʹ߹Θͤͯੜ࢈ੑΛߴΊΒΕΔߏ ˙.JDSPTFSWJDFT ˙.PEVMBS.POPMJUI
© Chatwork ৫ߏ ˔ώΤϥϧΩʔܕ৫͔Β٫ ˓νʔϜؒͷίϛϡχέʔγϣϯ͕औΓͮΒ͍ ˙ݱ͕ίϛϡχέʔγϣϯͤͣʹ࡞ΕΔ΄Ͳιϑτ ΣΞ։ൃ؆୯Ͱͳ͍ ˓ҙࢥܾఆͷ͕ᐆດ
© Chatwork ৫ߏ ˔ϗϥΫϥγʔ৫ ˓ϩʔϧϕʔεͷࣗͨ͠νʔϜ ˓ݖݶɺΛࢄ ˓$IBUXPSLࣾʹ͍ͯΔ͔ ࠓޙݕ౼ ग़య: GlassFrog
© Chatwork ϨΨγʔ͔Βͷ٫͜Ε·Ͱ ˔Ҡߦܭըɾํϓϥϯχϯά1P$ ˔ཁٻੳɾϞσϦϯά ˓3%3" %%% ˙3FMBUJPOTIJQ%SJWFO3FRVJSFNFOU"OBMZTJT ˙ۀɺϢʔεέʔεɺυϝΠϯɺʜ ˔͜͜·ͰͰϲ݄
© Chatwork ϨΨγʔ͔Βͷ٫͜Ε͔Β ˔5P%P ˓ϞσϦϯά ˓ίϯςΩετׂ ˓։ൃ ˓σʔλҠߦ ˓։ൃ৫ͷ৽ Δ͜ͱ͍ͬͺ͍
© Chatwork ·ͱΊ ˔ؔ࿈πʔϧͷݶք㲈ϨΨγʔͳ1)1ͷݶք ˓ίʔυͷϝϯςφϯεʹݶք͕དྷΔํ͕ૣͦ͏ ˓ʮࠔΛׂʯͰ͖ΔΑ͏ʹઃܭ͓ͯ͘͠ ˔αʔϏεͷࣾձతɺཁٻੑೳ͕ߴ·͔ͬͯΒͷେن ͳ৽ΊͪΌͪ͘Όେม ˓Ϗδωεنɺঢ়گʹ߹ΘͤͯదͳλΠϛϯάͰͷϦ ϑΝΫλɺϦϥΠτɺϦΞʔΩςΫτ
© Chatwork IUUQTXXXXBOUFEMZDPNQSPKFDUT
© Chatwork 8F$IBUXPSLBSFIJSJOH IUUQTDPSQDIBUXPSLDPNKBSFDSVJUFOHJOFFS ˔ϋΠύϑΥʔϚϯεͳ1)1Λॻ͖͍ͨਓ ˔1)1ʹॻ͖͖ͯผͷݴޠʹΓ͍͑ͨਓ