レガシーコード改善ガイドの読書会
会社でレガシーコード改善ガイドの読書会を開催する事にした。「テストがないコードはレガシーコードだ」という素敵なフレーズを帯にする本書を読み砕いて、レガシーコードと立ち向かっていきたい。
先日会社でテスト勉強会を開催した際に、*1 この本の読書会をやろうと呼びかけたところ、10名弱の有志が手を上げてくれた。
現場ではテストがないレガシーコードに喘いでいる。運用はトラブルに悩まされている。この悪循環を断ち切る武器がテストだ。時間がかかってもテストを書く。生き抜くためにテストを書く。その実践的なガイドになっている。
本書は400ページを越えるので、一人で読むのにはちょっとしんどい。きつい。そこで仲間を募って、どうにかがんばって読み砕いていきたい。
本書の例は、JavaやC++で書かれているが、弊社の場合は、Java以外にPHPのコードも山のようにあるので、PHPではどのように書くのか、書き換えるのかを考えながら読み解いていくと面白い。
第1部は、各自読んでおいて、第1回のときにそれについて、あれやこれや議論する。第2部は、章ごとに担当を決めて、その人が解説をしつつ皆で議論するという形式にした。章によっては分量が著しくことなる場合は、2~3章まとめて担当することにした。
毎週木曜日19時から20時半、会社の大きめな会議室(20名定員)を3ヶ月分確保した。出張等あらかじめスケジュールがコンフリクトしている場合は、その都度再スケジューリングする。一回30〜60ページ位読めればいいと思っている。
日本語なので、翻訳する手間暇はいらないが中身が手強いので、それなりに準備をしておかないと火傷をしそうな感じである。
本書を理解し自分のものにしレガシーコードと戦ってみたいと思う。
*1:そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト http://d.hatena.ne.jp/hyoshiok/20100312#p1