テストを書いていて思うこと

NUnitを使っていて実感することは沢山ありますが、
特に、「自分はコーディングが好きなんだなぁ」と再認識します。
#同時に、ドキュメントを書くことは退屈に感じる自分も再認識できます...(^^;;
この辺りは共感してくれる方は、たくさんいらっしゃるのではないでしょうか?

何故上記のように感じるのかというと、テストを書くということは、
インターフェイスを考えて、そのテストを書いて、実装していく。
クラスでまずいと思うところがあればリファクタリングをしていく。
といった感じで、常にコーディングを行っているのイメージになります。
これが、非常にリズム感があって楽しく開発できる理由だと思いました。
#もちろん、頭の中を整理するために裏紙やホワイトボードにクラス図などを落書きしたりはします。

以前、「テストを書くことはクラス設計を行っているのと同じ」と聞いたことがあります。
テストを書く+落書きによって頭の中がだんだん整理されていくんですね。
余計なドキュメントは書かないというXPのプラクティスも共感できます。

ただ、全てのドキュメントが必要でないかと言うと、もちろんそういうわけではないので、
個人的には、

  • お客様やメンバ間で情報共有するため   
  • アプリケーションの基本構造(アーキテクチャ)をより簡易に表現するため
  • 内部処理をより簡易に表現するため

といった点で、ドキュメントの重要性も感じています。
コードを読める人が全てではありませんし。

その辺りを、NAgileアジャイルモデリングとして今後まとめたいいきたいですね。