チームメンバーにリファクタリングを紹介する勉強会を開催した

チームメンバーにリファクタリングを紹介する勉強会を開催しました。

動機

  • ふりかえりで、最近コードがちょっとよくなってるよね、という話題がでた
  • 仕様変更やバグ修正のたびにコードが汚くなって困っている…という声もでた
  • コードをよくする方法があるならちょっとやってみたい、という声につながった
  • リファクタリングのさわりを紹介 + ハンズオンなんてどう?

ってことで、勉強会を開催することになりました。

勉強会の進め方

スライド中の様子

  • 負のスパイラルでは結構深刻な表情
  • コードが病むスピードのグラフでは「そうだよね〜 (真顔)」
  • マイケル・フェザーズのレガシーコード論が一番食いつきが強かった
  • ボーイスカウトルールでは「そうなんだよな〜」「そうだったらな〜」

ハンズオンの様子

  • ペアでリファクタリング体験
  • メソッド名の変更やメソッドの抽出といったごくシンプルなものを手順込みでいくつか
  • 同じくごくシンプルなものを手順なしで自分たちで考えてやってみる *1
  • ボーナスステージとして、実際のプロダクトコードをレベルダウンしたものも *2

まとめ

まだまだ立ち上がったばかりの活動ですが、少しずつ自分たちの手で触れていくのが大事だと思っています。
ふりかえりが出発点なので、まずは毎回のふりかえりで、今回のイテレーションでのリファクタリングを1〜3分くらいでフィードバックするようにしています。すでにイテレーションでのフィードバックがありましたが、ごくシンプルなものでもみんなの食いつきがとてもいいです。

本音

リファクタリングが特別でもなんでもない、チームにとって空気のようになるのが目標です (キリッ

*1:パターンは手順込みでやったものと同じ

*2:結果は言うまでもない