はじめに
先日、「Symfony Meetup #16 – レガシーコード改善座談会 -」に参加してきました。
会場はサイボウズスタートアップス株式会社 さんで開催されました。
ご移転された直後とのことで、オシャレなオフィススペースでした。
Symfony Meetup は、日本Symfonyユーザ会が主催する、Symfony ユーザが出会い、交流し、アイデアを交換し合う meetup (勉強会) です。
レガシーコード改善座談会
レガシーコードって何?
- 変更に弱い → テスト書く → 変更に強い
- テストコードがある
- コードが読みやすい(コーディングスタイル)
- コピペコードがない
- リファクタ・リプレイスしやすい
「保守性が高い」を計る方法がある
- 定量
- バグ件数
- 回収時間の計測
- コミット / PR数
- 定性
- 労せず改善できた事実
- 「SoE」「SoR」
品質と速度のバランス
品質 = 保守性が高いコード
- 保守性が高いコード + 開発速度(早い) = 最高
- 保守性が低いコード + 開発速度(早い) = スタートアップ向け
- 保守性が高いコード + 開発遅い(遅い) = 社内システム向け
- 保守性が低いコード + 開発遅い(遅い) = 最悪
保守性が高いコード + 開発速度(早い) を実現させるには、
- システム設計
- 完成系が見えている人いる
- OSS(フレームワーク含む)を活用できる → こうなる為にOSSを読む
- ツールを導入する( CI / デプロイ )
優秀なエンジニアが開発する
- 名著を読む
- ペアプロする
- PRベースでコードレビューするより、ペアプロしたほうが良い
楽しく開発する
- 勤務体制が柔軟
- 共通言語がある
Lightning Talks
PHPでコマンドを作ってHomebrewで配布する by @ttskch さん
MySQLとデッドロックの話 by @hanahiro_aze さん
PHPのV8JsでSSR by @koriym さん
まとめ
とても内容の濃いイベントでした。
Symfony Meetup の関係者の方々、ありがとうございました!
参考書籍
[amazonjs asin=”4774178039″ locale=”JP” title=”基本からしっかり学ぶ Symfony2入門”]