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バージョンアッププロジェクト戦略
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Keisuke Matsufuji
October 19, 2023
Programming
1.1k
0
Share
これから始める!ニ段飛ばしのPHPバージョンアッププロジェクト戦略
https://fortee.jp/phpcon-2023/proposal/85118c7f-c8ab-4c53-a99f-6566306404e4
Keisuke Matsufuji
October 19, 2023
Other Decks in Programming
See All in Programming
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
620
Agentic Elixir
whatyouhide
0
450
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
5
1.1k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
3
580
SkillsをS3 Filesに置く時のあれこれ
watany
3
1.6k
関係性から理解する"同一性"の型用語たち
pvcresin
1
190
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
190
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
370
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
190
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
1
170
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
150
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
0
110
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Evolving SEO for Evolving Search Engines
ryanjones
0
190
How to train your dragon (web standard)
notwaldorf
97
6.6k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
200
Unsuck your backbone
ammeep
672
58k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
550
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
370
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
GraphQLとの向き合い方2022年版
quramy
50
15k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
Mind Mapping
helmedeiros
PRO
1
190
Transcript
PHP Conference Japan 2023 2023.10.08 松藤 圭祐(@matsusuke)/GMOペパボ株式会社 1 これから始める!ニ段⾶ばしのPHP バージョンアッププロジェクト戦略
ホスティング事業部 プロダクトチーム 2022年 中途⼊社 2 ⾃⼰紹介 松藤 圭祐 Matsufuji Keisuke ホスティング事業部でバックエンドエンジニアとし
てプロダクトの設計‧開発‧保守を担当。 • matsusuke と呼ばれています • 福岡県福岡市在住の29歳 • Twitter : @mtfuji0mtske
GMOペパボについて 3 https://pepabo.com
ホスティング事業部のプロダクトについて 4 https://pepabo.com
5 ‧歴史あるアプリケーションの PHPバージョンアップの戦略 ‧どのような懸念があり、 どう決断を⾏なったか 今⽇話すこと
6 アジェンダ 1. アプリケーションの現状とゴール 2. ゴールに向けて⽴てた戦略 3. アプリケーションの質を担保するテスト戦略 4. さいごに
1. アプリケーションの 現状とゴール 7
アプリケーションの現状とゴール 8 PHP 5.6 PHP 8.2
アプリケーションの現状とゴール 9 PHP 5.6 PHP 8.2 やばい戦略
2. ゴールに向けて⽴てた戦略 10
ゴールに向けて⽴てた戦略 PHPStanによる静的解析 →構⽂エラーのうち、3分の2以上がZend Framework →フレームワークのバージョンを上げる? まず、何から始める? 11
ゴールに向けて⽴てた戦略 ZendFramework1系は8.2に対応していない フレームワークのバージョンアップが必要 →厳しい 12 懸念
ゴールに向けて⽴てた戦略 • 静的解析の結果、全ての構⽂エラーを直すのは効率的ではない • エラーの修正とフレームワークのパッチを当てる • テストコードを並⾏して作成する 戦略 13
3. アプリケーションの質を 担保するテスト戦略 14
アプリケーションの質を担保するテスト戦略 ⼀般的なテスティングピラミッド 15 E2E Integration Unit
アプリケーションの質を担保するテスト戦略 16 今回のテスト戦略 Unit E2E
アプリケーションの質を担保するテスト戦略 17 Unit E2E • 修正したメソッドのUnitテストのみ • できるだけ⼯数をかけない Unitテスト戦略
アプリケーションの質を担保するテスト戦略 18 Unit E2E • コアとなる機能のテストを 重点的に作成 • PlaywrightをE2Eライブラリとして使⽤ E2Eテスト戦略
4. さいごに 19
さいごに • 質の担保と⼯数のバランスが取れた戦略を考えることができた! • バージョンアップに携われた⽅、 是⾮体験談を聞かせてください! 20
Thank You! 21