.NET工厂模式

Siv*_*iva 5 .net design-patterns factory

可能重复:
接口与抽象类(通用OO)

嗨专家,

我正在阅读工厂模式

  1. 基于文章-http : //aspalliance.com/809_Working_with_Factory_Design_Pattern_using_C

我们定义接口,接口由类实现.基于某些属性,我们决定实例化哪个类

  1. 看了另一篇文章 - http://csharpdesignpatterns.codeplex.com/wikipage?title=Factory%20Method%20Pattern&referringTitle=Home

我们定义抽象类并在子类中实现它.

列出的两个例子都非常不同.基于我记得的基本原理.

  • 我们什么时候使用接口 - 当我们需要实现多态行为时
  • 我们什么时候使用抽象类 - 提供默认的基本功能

帮助我理解使用交互和使用抽象类的方式如何被称为工厂模式?

这两种有效的方法是?

抱歉格式化问题.

提前致谢

hen*_*iny 6

由于模式是抽象概念,因此它们并不严格依赖于实现; 所以使用接口或抽象类都是有效的方法imo.

Factory模式的主要思想是通过抽象来"简化"对象创建.

是否使用接口或抽象类取决于您的实现.根据我的经验,当已经定义了类结构时,工厂模式通常会发挥作用.例如,我已经决定在我的模型中使用接口或抽象类,现在我想重构,以便创建对象更简单=>我选择工厂模式.希望这可以帮助.