如果一个类并不总是创建 Foo 对象,那么将其称为 FooFactory 是错误的吗?例如,如果我有以下界面:
public interface IFooFactory
{
Foo Create();
}
并按如下方式实现:
public class FooFactory : IFooFactory
{
public IFoo Create()
{
return ServiceLocator.Current.GetInstance<IFoo>();
}
}
那么这个类可能会根据我的 IoC 容器的配置方式创建一个 Foo 。如果应该为真正的工厂保留“XxxFacotry”名称,我应该如何称呼我的接口和类?
显而易见的答案是 IFooProvider,但我真的想避免使用“XxxProvider”,因为它被过度使用,因此太模糊了。另一方面, IFooServiceLocator 太具体了。
非常感谢替代命名建议。