我在寻找哪种模式?

时间:2011-05-09 14:23:49

标签: c# .net design-patterns

说我有以下界面:

ICarProvider

以下类实现它:

RedCarProvider:ICarProvider
BlueCarProvider:ICarProvider
GreenCarProvider:ICarProvider

现在,我想做的是:

根据用户的设置,创建这些类中的一个(仅一个)的单个实例,并在整个应用程序会话中使用它。所以我的逻辑应该只知道接口以及获取实例的位置。

有这种模式吗?

谢谢!

5 个答案:

答案 0 :(得分:6)

它被称为factory pattern

答案 1 :(得分:3)

答案 2 :(得分:3)

抽象工厂模式。阅读wikipedia.org

的更多信息
  
    

在软件开发中,工厂是代码中构造对象的位置。使用该模式的目的是将对象的创建与其使用隔离开来。这允许引入新的派生类型,而不改变使用基类的代码。

  

答案 3 :(得分:1)

这听起来像某种工厂模式。

我无法避免对某种模式描述如此微不足道的需要持怀疑态度。

答案 4 :(得分:0)

您所呈现的内容似乎是工厂模式,但您不应仅为描述对象的属性创建类,有时最好使用地图。