私はTDDのメリットを見ています。私は頭の中で頭を包む方法を学びたいと思っています。私はDDDについてもっと読んでいて、両方を自分のソフトウェアプロジェクトに適用したいと思っています。TDDはどのくらい適用する必要がありますか?
私はいくつかの "手書き"プログラミングブックを購入しています(実際のアプリケーションと実際の解決策を小さなスニペットで議論するものです)。 TDDを使用するのではなく、伝統的なコードファーストの方法でアプリケーションの「インフラストラクチャー」レイヤー、どちらの本も、TDDがどれほど優れているのか、ケーススタディがどのようにそれを利用するのかを話し合うために出て行く。
たとえば、ASP.NET 3.5ソーシャルネットワーキングのいずれかの書籍では、2番目の章全体で、ロッキングラッパークラス、電子メールラッパークラス、キャッシュおよびセッションラッパークラス(および関連するインターフェイス)単一の単体テスト時に別の本.NET Domain Driven Design with C#:Problem、Design、Solutionも同様です。「実」コードに触れる前に、コードベースの基本クラスとリポジトリフレームワークを作成します。
ドメインクラスの実際のロジックと機能をテストする必要があることをご理解ください。私は、あなたが書いていないコード(例えば、組み込みの.NETクラス)にのみ適用される "plumbingをテストしない"コードを考えていましたが、私が読んでいるものは、これは実際にあなたのアプリケーションと関連していて、基礎を提供するために書いた配管ではありません。
これはTDDを適用するための許容可能な方法ですか?
これは単体テストのポイントになると思います。 TDDのポイントは、あなたのテストでデザインを動かすことです。最初にテストを書くと、テストが可能なコードを開発できるようになり、作成を開始する前にシステマティックな方法でデザインを考える必要があるため、デザインは実際に向上します。 – tvanfosson
あなたがリンクをたどっていたら、まさにそのことを言っていたと思うでしょう。 –
私はTDDを厳密な仕様方法の多くとして実際見ていますが。 –