шаблон трейдера продукта в c # - PullRequest
0 голосов
/ 09 июля 2011

Эта ссылка представляет собой документ с подробным описанием «Шаблон трейдера продукта»

У кого-нибудь есть опыт, которым можно с этим поделиться?Ссылки на некоторые примеры кода?

Я хотел бы увидеть некоторые примеры реализации на C #, в частности.

Меня смущают две проблемы:
(1) создание продукта.Может ли кто-нибудь перевести пример кода из статьи (ниже) в c #
(2), является ли класс спецификации тем же, что и шаблон спецификации, поддерживаемый Эвансом и Фаулером?

Cheers,
Berryl

template<class ProductType, class SpecType>
class Creator
{
    public:
        Creator(SpecType aSpec) : _aSpecification(aSpec) {}
        SpecType getSpecification() { return _aSpecification; }
        ProductType * create() = 0; 
    private:
        SpecType _aSpecification;
};

template<class ProductType, class ConcreteProductType, class SpecType>
class ConcreteCreator : public Creator<ProductType, SpecType>
{
    public:
        ConcreteCreator(SpecType aSpec) : Creator<ProductType, SpecType>(aSpec) {}
        ProductType * create() { return new ConcreteProductType; }
}

1 Ответ

1 голос
/ 09 июля 2011

Вот перевод кода на C #:

public abstract class Creator<ProductType, SpecType>
{
    public Creator(SpecType aSpec) { _aSpecification = aSpec; }

    public SpecType GetSpecification() { return _aSpecification; }

    public abstract ProductType Create();

    private SpecType _aSpecification;
}

public class ConcreteCreator<ProductType, ConcreteProductType, SpecType> : Creator<ProductType, SpecType> where ConcreteProductType : ProductType, new()
{
    public ConcreteCreator(SpecType aSpec) : base(aSpec) { }

    public override ProductType Create() { return new ConcreteProductType(); }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...