public class BanknoteDescriptor
{
public double Value { get; set; }
public string Currency { get; set; }
}
public class Banknote
{
private BanknoteDescriptor _description;
public Banknote(BanknoteDescriptor description)
{
_description = description;
}
public double Value
{
get { return _description.Value; }
}
public string Currency
{
get { return _description.Currency; }
}
// Overring in order to create a value object
// ...
}
ご挨拶、
同じプロパティを提供する 2 つのクラスがあります。1 つ目はすべてのプロパティの読み取りと書き込みを許可し、2 つ目は読み取りのみを許可します。巨大なコンストラクター (後で変更される可能性があります) の代わりに、そうすることで値オブジェクトを作成する方が簡単だと思います。Builder パターンには、オブジェクトの作成専用のクラスが含まれており、私の目には、単純な値オブジェクトには「多すぎる」ように見えます。
質問は、これは名前付きパターンですか? 誰かがこの種のトリックを以前に使用したことがありますか? それを続けることで、後で問題に遭遇するでしょうか?