未来のいつか/hyoshiokの日記

hyoshiokの日々思うことをあれやこれや

レガシーコード改善ガイドの読書会

会社でレガシーコード改善ガイドの読書会を開催する事にした。「テストがないコードはレガシーコードだ」という素敵なフレーズを帯にする本書を読み砕いて、レガシーコードと立ち向かっていきたい。

先日会社でテスト勉強会を開催した際に、*1 この本の読書会をやろうと呼びかけたところ、10名弱の有志が手を上げてくれた。

現場ではテストがないレガシーコードに喘いでいる。運用はトラブルに悩まされている。この悪循環を断ち切る武器がテストだ。時間がかかってもテストを書く。生き抜くためにテストを書く。その実践的なガイドになっている。

本書は400ページを越えるので、一人で読むのにはちょっとしんどい。きつい。そこで仲間を募って、どうにかがんばって読み砕いていきたい。

本書の例は、JavaC++で書かれているが、弊社の場合は、Java以外にPHPのコードも山のようにあるので、PHPではどのように書くのか、書き換えるのかを考えながら読み解いていくと面白い。

第1部は、各自読んでおいて、第1回のときにそれについて、あれやこれや議論する。第2部は、章ごとに担当を決めて、その人が解説をしつつ皆で議論するという形式にした。章によっては分量が著しくことなる場合は、2~3章まとめて担当することにした。

毎週木曜日19時から20時半、会社の大きめな会議室(20名定員)を3ヶ月分確保した。出張等あらかじめスケジュールがコンフリクトしている場合は、その都度再スケジューリングする。一回30〜60ページ位読めればいいと思っている。

日本語なので、翻訳する手間暇はいらないが中身が手強いので、それなりに準備をしておかないと火傷をしそうな感じである。

本書を理解し自分のものにしレガシーコードと戦ってみたいと思う。

*1:そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト http://d.hatena.ne.jp/hyoshiok/20100312#p1