1
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 パターンには、オブジェクトの作成専用のクラスが含まれており、私の目には、単純な値オブジェクトには「多すぎる」ように見えます。

質問は、これは名前付きパターンですか? 誰かがこの種のトリックを以前に使用したことがありますか? それを続けることで、後で問題に遭遇するでしょうか?

4

2 に答える 2