factory-pattern

    -1热度

    1回答

    我一直在阅读很多关于工厂模式方法的内容,并且在所有这些方法中,似乎都有一个工厂中的静态方法,它基于switch-case在运行时返回所需的产品,但这似乎违反了Open密切的原则是每当有新产品时,工厂类需要修改以进行必要的更改。 下面是我认为也符合工厂模式的代码,但我不确定这种方法是否正确。基本上我认为客户会知道它需要什么类型的工厂,根据它得到的产品,工厂独自处理, 请让我知道,如果这是正确的方法,

    0热度

    2回答

    我正在尝试使用抽象工厂模式创建一个可自定义的“主题”窗体应用程序(只是为了获得一些经验)。我创建了一个主题 - 工厂的实现是这样的: private IThemeFactory _themeFactory; public Form1(IThemeFactory theme) { _themeFactory = theme; // e.g. new BlueTheme()

    0热度

    1回答

    是否允许DDD Factory直接为域对象设置属性? 如: public class DomainObjectFactory { public DomainObject CreateForUser(int userId) { var domainObject = new DomainObject(); domainObject.UserId = use

    0热度

    1回答

    我有一个依赖工厂类,像 class DependencyFactory { static Dependency dependency1 = getDependency1FromSomewhere(); static Dependency dependency2 = getDependency2FromSomewhere(); public static Depen

    0热度

    2回答

    我有一个“标准”JPanel内有两个面板。我试图创建一种模板类,然后扩展它并实现内容。问题是关于实施它的方式。 下面的代码是我试图使它工作,但我刚开始阅读有效的Java书,我不熟悉静态工厂方法。特别试图抽象它们。 ,我试图专门遵循一些从书上的提示是 考虑静态工厂方法代替构造 青睐组成了继承 不想接口抽象类 但我无法找到一个很好的解决方案尊重这些要点(没有他们:P)。 public abstract

    4热度

    1回答

    我得到了我认为可能是一个不寻常的问题(我已经搜索了很多答案,但我不认为我找到了一个)。 我有从队列中读取的消息,并根据消息类型包含需要反序列化到具体的c#类的有效载荷。这需要最终是具体的(我不能使用泛型),因为我使用表达式树对从队列到达的类执行评估。 的基类看起来是这样的: public abstract class BaseRuleMessage<T> { public abstra

    1热度

    1回答

    我有一个将工厂方法作为参数的函数。调用工厂方法将创建一个对象。现在我想我可以直接指定所需对象/类Fruit.__init__的构造函数作为工厂方法。但这不起作用,因为self的论点“不存在”。所以,我要介绍的另一种方法fruit_factory它建立了对象: def fruit_factory(owner): return Fruit(owner) class Fruit:

    0热度

    1回答

    如何发送的核心J2EE模式凭据 - 数据访问对象? 我得到http://www.oracle.com/technetwork/java/dataaccessobject-138824.html 他们提供了这个例子模型使用 // create the required DAO Factory DAOFactory cloudscapeFactory = DAOFactory.getDAOFacto

    1热度

    1回答

    我有一个派生类型的列表,我想映射到另一个类型的列表。每种派生类型都与新类型不同。 是否有任何模式可以在不投射每种类型的情况下执行此操作,并且保持映射逻辑不在类型中(在工厂中)。 下面是一个例子,我想找到GetFlatSwitch替代,像GetFlat: class Program { static void Main(string[] args) { Li

    0热度

    2回答

    如何摆脱它们?我想知道是否有模式或者解决这个问题的东西。基本上我需要基于另一个类的类型属性实例化一个具体的子类,例如,如果type = 1那么新的A,否则如果type = 2然后新的B等等。我已经结束了这种类型的工厂类型属性的类: /** * Get a ticket decorator based on the ticket type * @return ReferralService\Ti