デザインの質問があります。私は誰かが書いたコード化されたUIテストフレームワークを使って作業していて、私はそれを維持しています。私はこれが間違って設計されている方法を確信していますが、私は他の意見を得るだろうと思いました。これは基本的に、他のオブジェクトを作成して返すことを唯一の目的とする大きな静的クラスです。
良い/悪い...なぜですか?私はかなり重要なリファクタリングを行うようロビー活動を行っており、私のケースを上司に納得のいくように喜ばせたいと思っています。
public static class ParentClass
{
private static ChildClass1 childClass1;
private static ChildClass2 childClass2;
// 10+ more of the same
// Properties
public ChildClass1 ChildClass1
{
get
{
if (childClass1 == null)
{
childClass1 = new ChildClass1();
}
return childClass1;
}
}
public ChildClass2 ChildClass2
{
get
{
if (childClass2 == null)
{
childClass2 = new ChildClass2();
}
return childClass2;
}
}
// 10+ more of the same
}
[TestClass]
public class TestClass1
{
[TestMethod]
public void TestMethod1()
{
var x = ParentClass.ChildClass1.SomeMethod();
Assert.IsNotNull(x);
}
[TestMethod]
public void TestMethod2()
{
var x = ParentClass.ChildClass2.SomeMethod();
Assert.IsNotNull(x);
}
// 10+ more of the same
}