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
進化し続けるプロジェクト ~バージョンアップを円滑に進める方法~
Search
wadakatu
August 26, 2024
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
進化し続けるプロジェクト ~バージョンアップを円滑に進める方法~
wadakatu
August 26, 2024
More Decks by wadakatu
See All by wadakatu
Serena MCPのすすめ
wadakatu
4
1.5k
Other Decks in Programming
See All in Programming
初めてのKubernetes 本番運用でハマった話
oku053
0
120
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
370
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
260
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
4k
Contextとはなにか
chiroruxx
1
390
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
310
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
120
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
160
act2-costs.pdf
sumedhbala
0
110
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
580
Performance Engineering for Everyone
elenatanasoiu
0
270
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
480
Featured
See All Featured
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Building Adaptive Systems
keathley
44
3.1k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
260
Music & Morning Musume
bryan
47
7.3k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
390
Between Models and Reality
mayunak
4
370
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
BBQ
matthewcrist
89
10k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
310
Code Reviewing Like a Champion
maltzj
528
40k
The Spectacular Lies of Maps
axbom
PRO
1
850
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Transcript
バ ー ジ ョ ン ア ッ プ を 円
滑 に 進 め る 方 法 進化し続けるプロジェクト エージェント事業開発本部 MENTA担当 磯野 公耀 26 August, 2024
自己紹介 名前: 磯野 公耀(いその こうよう) 生息地: 大阪府 好きなもの: HHKB ,
カメラ GitHub: wadakatu アレルギー30種類持ってます(よく生きてる、えらい)
プログラミング言語 / フレームワーク バージョンアップしてますか?
バージョンアップって 中々進まないものですよね
影響範囲広すぎ ライブラリの互換性調べるのめんどくさい 時間とリソースが足りねえ! ??「今動いてるんだから いいじゃん」 現行バージョンと最新バージョンの差分デカすぎる!!
その気持ちわかります。
でも、バージョンアップは必要不可欠 逃げちゃダメだ、逃げちゃダメだ、逃げちゃダメだ!
バージョンアップを怠ると、 、 、 セキュリティの脆弱性増加 パフォーマンスの劣化 エンジニア採用への悪影響
なので、Mentaは
PHP 8.1 -> PHP 8.2 Laravel 10 -> Laravel 11
Vue2 -> Vue3 同じ悩みを抱えながらも、 、 、 のバージョンアップをしました! 4ヶ月でやったった!
バージョンアップを 円滑に進めるためのTips5選
1. 周辺ライブラリの断捨離をしよう お家の断捨離もしないとな。 。 。
言語やフレームワークのバージョンアップは 周辺ライブラリのバージョンアップも含まれる
それなら、バージョンアップ対応する ライブラリの数はなるべく少ない方が楽できる
昔使ってたけど、今使ってないライブラリって意外と多い
Mentaでは PHP / Laravelバージョンアップ:15個削除 Vue.jsバージョンアップ:7個削除
適切に断捨離して、無駄なアップデート作業を省こう!
2. ドキュメントと親友になろう
メジャーバージョンアップデートの際には、専用の公式 ドキュメントが用意されていることが多いです。
ブログ記事などを読む前に、絶対に 公式ドキュメントを先に読みましょう
英語版しかなくても、ChatGPTやDeepLなど 駆使して諦めず読んでみよう この業界にいる限り、英語からは逃げられないんですから...
自分たちのコードと照らし合わせながら読むと、 大体の影響範囲が予測できるのでおすすめ
3. バージョンアップは一歩ずつ
バージョンアップに焦りは禁物
PHPで例えると
PHP7.2 → PHP8.2 みたいなのは 絶対やめてください
セマンティックバージョニングを理解して 無理のないバージョンアップを行おう
セマンティックバージョニングとは X.Y.Z のようなバージョン表記 例:PHP8.1.19 / Vue3.4.12 X = メジャーバージョン 大きな機能変更、削除(後方互換性なし)
Y = マイナーバージョン 新機能追加、パラメータ追加(後方互換性あり) Z = パッチバージョン バグ修正(後方互換性あり) 詳しい説明はこちら
セマンティックバージョニングを使った場合 現行バージョン:PHP7.2.0 目標バージョン:PHP8.2.22 PHP7.2.0 -> PHP7.2.34 -> PHP7.3.33 -> PHP7.4.33
-> PHP 8.0.30-> PHP8.1.28 -> PHP8.2.22 あくまでも一例です
4. GitHubを有効活用しよう
公式ドキュメントがない場合、次に頼れるのはGitHub
GitHubのリポジトリページのREADMEにバージョンアップの 変更点や注意点が記載されていることもある
GitHubのIssueやDiscussionにも アップデートに関して有益な情報がよく転がっている
雑訳:このライブラリのVue3サポート頼むで〜〜〜
雑訳:Vue3サポートあったらワイも嬉しいわ〜 Vue3用に作ったフォークがあるみたいやけど、 製作者の@sipecさんがほんまにやる気あるかわからんのよな〜
雑訳:残念やけど、そのフォークもうメンテされてないっぽいで〜
雑訳:せやねん、色々忙しくてやめたんよ。ごめんやで。 。 。
雑訳:このプラグインのVue3対応しといたで〜 GitHub見といてよかった〜〜〜 🎉
IssueやDiscussionにまだ存在しない題材に関しては 自分で投稿してみるのも大事
5. ツールを使って楽しよう
Rector
PHPStanを用いた静的解析 + PHP-ParserベースのAST操作 = 超強力リファクタリングツール 引用元:Rector ではじめる "運用を止めない" PHP アップグレード
Rectorとは
MentaでもRector活用して 楽に安全にアップデートしました!
None
None
お金が潤沢に使える場合は...
有料サービスを使って 楽をするのもありかも。 。
まとめ バージョンアップは色々辛い
まとめ 効率よくバージョンアップしよう
まとめ ・1歩ずつバージョンアップを進めていこう ・バージョンアップ時はライブラリ断捨離チャンス ・ドキュメントをよく読もう ・GitHubにはバージョンアップを助けてくれる仲間がいる ・無料、有料ツールを使って楽をしよう
ご清聴ありがとうございました。