代码之家  ›  专栏  ›  技术社区  ›  Damian Powell

如果类不总是创建Foo对象,那么将其称为FooFactory是错误的吗?

  •  2
  • Damian Powell  · 技术社区  · 14 年前

    如果一个a级食品工厂不这样叫是不对的吗 总是 创建Foo对象?例如,如果我有以下接口:

    public interface IFooFactory
    {
        Foo Create();
    }
    

    具体实施如下:

    public class FooFactory : IFooFactory
    {
        public IFoo Create()
        {
            return ServiceLocator.Current.GetInstance<IFoo>();
        }
    }
    

    可以 根据IoC容器的配置创建Foo。如果“XxxFacotry”名称应该保留给真正的工厂,那么我应该如何称呼我的接口和类?

    非常感谢其他命名建议。

    3 回复  |  直到 14 年前
        1
  •  3
  •   Proclyon    14 年前

    如果某个东西有时做蛋糕,你会叫它饼干厂吗?

        2
  •  3
  •   Dan Tao    14 年前

    你的班级 IFilter ,这可能需要也可能不需要创建一个。我不明白怎么做 FilterProvider 太模糊了。

    如果你不喜欢,那你呢 FilterSource

    不过,老实说,我不认为这么说有什么不好 FilterFactory ;我是说,谁会那么在乎它是如何实现的?如果有人打电话给你 Create 创建 事实上 从头开始实例化一个新对象。

        3
  •  0
  •   Damian Powell    14 年前

    如果一个食品工厂不是这样的话,那么把它命名为食品工厂是错误的 总是 创建新的Foo对象,因为这是我自己的偏好所在。