実践テスト駆動開発
実践テスト駆動開発 (Object Oriented SELECTION) | Steve Freeman, Nat Pryce, 和智 右桂, 高木 正弘 |本 | 通販 | Amazon
やっていき。
といきたいところだが、九章から十九章を見てみると
オークションスナイパーをつくる話になっているので、
これをメモしてもな〜と思ったので一旦飛ばす。
もしかしたら後でやるかもしれない。
というわけで二十章からスタート。
二十章
「どうやってテストするか」、ではなく、「なぜテストしづらいのか」という思考にする。
オブジェクトのモックを作りたいときに、作るのが難しい場合は設計を見直した方がいい。
テスト優先の考え。でもテストは大事なのでそのために修正というのは私も賛成。
しかし現場をどう説得すればいいのかわからない。
- ログ出力はフィーチャー
サポートログと診断ログはそれぞれ作成基準が異なる。
* サポートログはテスト駆動で作る必要がある。
なぜなら読み手がシステム管理者やオペレータになるから。
* 診断ログはテスト駆動で作る必要がない。
プログラマ向けのメッセージだから。足場みたいなものだから。
- 大量の引数のコンストラクタ
まず、暗黙のコンポーネントがないか確認する。
暗黙のコンポーネントとは、例えば引数Aが引数Bと一緒に使われている等の依存のこと。
その場合、ラッピングできるならラッピングしたりする。
そして、責務を持たせすぎて混乱しているオブジェクトが生成されていることがある。
その場合はおとなしくスライスしよう。
- 多すぎる依存関係
依存関係のあるものだけをコンストラクタで渡す。
>> Home