【PHP】【勉強会】大改修!PHPレガシーコードビフォーアフターに参加してきた
🤲概要
PHPの勉強会「大改修!PHPレガシーコードビフォーアフター」に参加してきました。
タイトルから想像される内容とは少し違いましたが(何をもってレガシーとするか)、良い切り口で大変おもしろかったです。
📚勉強会の概要
個人で開発しているwebサービス「fortee(ふぉるて)」の技術的負債を匠達が改善していく!
みたいな目論見だったのですが、実際には
- 一般的に想像されるより思ったよりレガシーじゃない
- PHP7系
- Cake3系
- docker使ってる
- テストちょっとだけどある
という事で、
雑目に作られたサービスを、ちゃんとした設計・運用にのっけるために必要なノウハウ集!
だったと思います。
サービスを新規開発する時とか、雑に運用してたけどちゃんとしよう!みたいな時のチェックリストのとっかかり(これだけでは足りないので)として良い感じだと思います。
🤔発表ごとの感想
スポンサーセッション / @suzukiさん
価値を提供しているコードはレガシーじゃない、レジェンドコードだ!
価値を生み出しているレガシーコードはレジェンドコードと呼ぶべき#phperkaigi
— 遠藤ヒズミ (@endo_hizumi) 2019年11月30日
レガシー
だと技術的負債みたいなマイナスの言葉として捉えがちなので、中身はあれでもしっかりとユーザーに価値を提供しているコードはレジェンドコード
として尊敬しよう。
これはすごく良いですね。価値提供してないならサービス終了とか削除されちゃいますしね。
歴史的経由とかで今見るとあれだけど、ユーザーに価値を提供できているというのは偉大な事。
独立したコアレイヤパターンの適用 - fortee 編 - / @shin1x1さん
PHPStormの使いこなしがやばい。自分はまだまだだ、、、
ライブコーディングしてくれたのですが、PHPStormの使いこなしっぷりが気持ちよくて、見てて楽しいライブコーディングでした。すごい。
PHPプロジェクトに静的解析を新規導入する / @tadsanさん
静的解析をプロジェクトにいれてみよ〜
話として知ってはいたものの、「lintだけ入れとけばあとはレビューでなんとかなるっしょ」、という感覚で入れたことなかったですが、改心しました。
forteeに脆弱性検査をかけてみた VAddy編 / @cakephper(ichikaway)さん
今までZAPで雑にやってたけど、CIに組み込めるし使いやすそう
www.slideshare.net
セキュリティ大事ですよね、、、
ZAPに比べると、webエンジニアが使いやすそうでした。
レガシーなWebアプリケーションと向き合う / @blue_goheimochiさん
レガシー具合も「推測するな。計測せよ。」
www.slideshare.net
レガシーなコードって、感情的に「辛い」「触りたくない」みたいな感じになってしまうのですが、可視化できるところはすると、改修の指針としてすごく使いやすいなと思いました。エンジニア以外にも説明しやすいです。
Forteeをバージョンアップしてみた / @yakitori009さん
テストあるとバージョンアップの大変さが全然違うな〜
バージョンアップ、こまめにやらないときついな〜と改めて思いました。テスト大事。
その他資料まとめ
🤝まとめ
ありがとうレジェンドコード。
- 設計
- 静的解析
- 脆弱性診断
- レガシーさの計測
- バージョンアップ
と、運用してると向き合わないネタが色々な方面から取り上げられて、大変勉強になりました。
OSSだとすごい勢いで改善は進むだろうけど、全体で何が起きているかはわかりにくくなっちゃうので、あえてこのままプライベートなリポジトリにしておいた方が、ネタとしては面白いなと思いました。
第2回期待しています。