より良いAPIデザインにするためテストやドキュメントを書く
コードを書くとき、最初はざっとAPIを下書きしてから実装を進めていくが、この時点では「目的の機能としては動作する」けれども、使いやすく一貫性のあるAPIデザインを実現できていることは少ない。
- テストコードを書いている時に、オブジェクトの境界を意識する
- ドキュメントを書いている時に、使い勝手を意識する
など、コードを俯瞰して見ることで、不必要な結合に気付いたり、一貫性の無さに気付いたりする。実装から視点を強制的に変えられる効果が、設計に良い影響を与えるのだろう。