C#工厂方法模式
来源:互联网 发布:微信公众号推荐 知乎 编辑:程序博客网 时间:2024/06/13 13:38
简单工厂模式存在一个缺陷即违反了开闭原则。工厂方法模式避免了只一点。
开闭原则定义:一个软件实体应当对扩展开放,对修改关闭。及软件实体应
尽量在不修改原有代码的情况下进行扩展。
开闭原则:http://blog.csdn.net/lovelion/article/details/7537584
工厂方法模式概述:
工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象。
工厂方法模式包含以下4个角色:
•Product(抽象产品)
•ConcreteProduct(具体产品)
•Factory(抽象工厂)
•ConcreteFactory(具体工厂)
优点:
1、工厂方法用来创建客户所需要的产品,同时还向客户隐藏了哪种具体产品类将被实例化这一细节
2、能够让工厂自主确定创建何种产品对象,而如何创建这个对象的细节则完全封装在具体工厂内部
在系统中加入新产品时,完全符合开闭原则
缺点:
1、系统中类的个数将成对增加,在一定程度上增加了系统的复杂度,会给系统带来一些额外的开销
增加了系统的抽象性和理解难度
0 0
- C#工厂模式-工厂方法
- C#工厂方法模式
- C#工厂模式实现方法
- c#设计模式-工厂方法
- C#设计模式--工厂方法
- C#设计模式:抽象工厂方法模式
- c# 设计模式:工厂方法模式
- C#设计模式之工厂方法模式
- 【C# 设计模式-工厂方法模式】
- c#设计模式之工厂方法模式
- C#设计模式--工厂方法模式
- C#设计模式(3)-工厂方法模式
- C# 设计模式 之 工厂方法
- 工厂模式 -- 工厂方法
- 工厂模式-工厂方法
- 工厂模式-工厂方法
- 工厂 > 工厂方法模式
- 【设计模式】C#版三大工厂之简单工厂、工厂方法与抽象工厂
- 软件测试人员的修行新篇
- 数字图像处理—图像滤波(中值滤波)
- 文件和目录(IO)操作
- Spring学习笔记之Spring事务及事务测试
- ROS环境下进行package的简单创建并编译
- C#工厂方法模式
- <学习笔记>Postfix邮件服务器的详细配置
- 字符串匹配
- [MFC]Shapes程序(4):菜单项的加速键、MFC注释宏
- HDU 1875-kruskal
- NGUI: UIToggle
- C++ protected 和 private 在子类继承时的区别
- 【剑指offer】 面试题50: 树中两个结点的最低公共祖先
- 【算法】字符串编辑距离