PHP5.3からPHP7.0へバージョンアップの裏側
by
Z.O.E.
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PHP 5.3 から PHP 7.0 へ バージョンアップの裏側 Ikezoe.makoto
Slide 2
Slide 2 text
池添 誠 / Ikezoe Makoto • 2015年、ウィルゲートに新卒入社(3年目) • 開発グループ プロダクトユニット所属 • サグーワークスの開発からインフラまで担当 2 自己紹介 イメージキャラクター 「さぐる」
Slide 3
Slide 3 text
3 株式会社ウィルゲート – 事業
Slide 4
Slide 4 text
4 株式会社ウィルゲート – 事業
Slide 5
Slide 5 text
5 株式会社ウィルゲート – 事業
Slide 6
Slide 6 text
表の話 • バージョンアップした話 – Cake 1.3 → Cake 3.2 – PHP 5.3 → PHP 7.0 – ブログ記事 • http://tech.willgate.co.jp/entry/3582/
Slide 7
Slide 7 text
裏の話 • どのように進めていったか – チームに対して – 事業部に対して – 他の開発と並行して進めるための方法 • バージョンアップして得られたこと
Slide 8
Slide 8 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ
Slide 9
Slide 9 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • 社外での開発でまずは PHP 7.0 を触ってみた – まずは自分が体験してみるところから
Slide 10
Slide 10 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • 書き換え箇所の調査 – 破壊的変更の箇所 – 書き換えのコストがどれくらいあるか • 一括変換できるもの、できないものの洗い出し • 新機能の勉強
Slide 11
Slide 11 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • まず説得、一緒に闘う仲間を増やす – 戦闘員を増やす • 一人で進めるのは大変!バージョンアップは骨が折れる仕事 • チーム全体で合意が取れてる状態にする – チームで円滑に進めるため • リニューアルに合わせてあげたいとリーダーに相談
Slide 12
Slide 12 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • 説得材料 – 利便性(新しい技術) • Ex) isset 書かなくていい(`??` null合体演算子めっちゃ楽) – 技術的成長 • 最新バージョンに追従してる、イケてるエンジニア • バージョンアップの経験を得られる
Slide 13
Slide 13 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • 工数の確保 – 安全にバージョンアップするために必要 – 受けた要望の開発は止めないように工夫して進めた – 日頃の関係性も大事
Slide 14
Slide 14 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • 説得材料 – 事業部(サービス)に対するメリットを知ってもらう • 処理速度の向上、品質の担保(テストコードの導入) • ライブラリ導入の簡易化(composer 非対応だった)=開発速度の向上 – より良い開発環境 • サービスのブランディングにもつながる
Slide 15
Slide 15 text
どのように進めていったか 調査期間 自主利用 チーム 事業部 PHP 7.0へ • バージョンアップ用環境と人員の確保 • Docker を用いて並行開発できるようにした • ブランチの管理 – master ブランチから派生したバージョンアップ用の new-master – master から new-master に定期マージして新機能の漏れを防止 • リリース直前の新機能開発は PHP 7.0 で開発
Slide 16
Slide 16 text
バージョンアップして得られたこと • サービスの成長につながった – 開発速度UP – 新しい技術・知識の獲得 – ライブラリなどの対応状況 • 達成感 – チームメンバー全員で協力してできた → 信頼関係 • 勉強会、LTなどのチャンス – 社外などでも登壇するチャンスの一つになった
Slide 17
Slide 17 text
まとめ • まずはやってみる。使ってみる。 • 協力してくれそうな人から説得していく • 上長(決定権がある人)に懇願してみる • PHP5 系から PHP7 系へアップデートは意外と楽 • 技術的なもの以外にも得られるものは多い