这是一个命名模式吗?

时间:2013-08-11 16:01:49

标签: c# oop design-patterns architecture

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
    // ...
}

问候,

我有两个提供相同属性的类。第一个允许读取和写入他的所有属性,第二个只允许阅读。我发现通过这样做更容易创建值对象,而不是一个巨大的构造函数(以后可能会有所不同)。 Builder模式涉及一个专门用于创建对象的类,对于一个简单的值对象来说,在我眼中看起来“太多”。

所以,问题是,这是一个命名模式吗?有人之前已经使用过这种技巧吗?我会在以后继续遇到问题吗?

2 个答案:

答案 0 :(得分:1)

这可以称为Wrapper模式。

答案 1 :(得分:0)

如果我正确理解了您想要识别的代码的哪一部分,那么肯定是,它确实有一个共同的名称。

引入一个封装参数列表的类,以便代替巨大的构造函数,而不是只有一个参数对象,称为引入参数对象,并且在福勒的重构模式目录中列出。

http://www.refactoring.com/catalog/introduceParameterObject.html

相关问题