この単純な例では (もちろん、基本は同じですが、私の現実世界の問題はもう少し複雑です)、どうすれば最大限に教えてドント・アスクを強制できますか? 現在の状態では、モックとテストが困難です。
public class Processor
{
public void Process()
{
var data = new Task1().DoStuff();
new Task2().DoStuffToData(data);
}
}
public class Task1
{
public Data DoStuff(){return new Data();}
}
public class Data {}
public class Task2
{
public void DoStuffToData(Data data){}
}
編集:サンプルをさらにDIishに更新
public class Processor
{
public Processor(ITask1 task1, ITask2 task) {...}
public void Process()
{
var data = task1.DoStuff();
task2.DoStuffToData(data);
}
}