C#设计模式——总结
2015-08-05 15:08
423 查看
本文为《C#设计模式》阅读心得
主要设计模式包括:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式、职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式
1.简单工厂模式:根据参数返回实例,将对象的创建与对象的使用分开,适用于功能简单的同一类对象模块创建,此模式因比较简单和本身不符合设计原则并不在主要23种设计模式之中。
2.工厂方法模式:为简单工厂方法模式延伸,继承了简单工厂方法模式包装类的创建(一些比较复杂),简化使用者代码,克服了简单工厂方法模式不符合开闭原则的缺陷;缺点增加了代码的抽象度和理解难度,并给系统带来额外开销;适合系统内部功能组建。
3.抽象工厂模式:为工厂方法模式延伸,可对产品分类(类别内可包含众多具体产品),应付较复杂产品创建,应可扩展至多层;缺点修改产品层级较麻烦,不符合开闭原则;
4.建造者模式:将复杂产品的具体成员打包,使用者不需要知道内部具体细节,使用简便;缺点产品间需具有较多共同点(组成部分也需要相似),否则无法使用;
5.原型模式:对象克隆模式,需注意浅克隆与深克隆,用于对象创建成本较大和产品复制频繁的场合,缺点违背开闭原则;
6.单例模式:在系统内只创建一个实例,保持使用对象一致,可用于公共资源(外部硬件、公共变量、文件读写、公共功能等)
主要设计模式包括:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式、职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式
1.简单工厂模式:根据参数返回实例,将对象的创建与对象的使用分开,适用于功能简单的同一类对象模块创建,此模式因比较简单和本身不符合设计原则并不在主要23种设计模式之中。
2.工厂方法模式:为简单工厂方法模式延伸,继承了简单工厂方法模式包装类的创建(一些比较复杂),简化使用者代码,克服了简单工厂方法模式不符合开闭原则的缺陷;缺点增加了代码的抽象度和理解难度,并给系统带来额外开销;适合系统内部功能组建。
3.抽象工厂模式:为工厂方法模式延伸,可对产品分类(类别内可包含众多具体产品),应付较复杂产品创建,应可扩展至多层;缺点修改产品层级较麻烦,不符合开闭原则;
4.建造者模式:将复杂产品的具体成员打包,使用者不需要知道内部具体细节,使用简便;缺点产品间需具有较多共同点(组成部分也需要相似),否则无法使用;
5.原型模式:对象克隆模式,需注意浅克隆与深克隆,用于对象创建成本较大和产品复制频繁的场合,缺点违背开闭原则;
6.单例模式:在系统内只创建一个实例,保持使用对象一致,可用于公共资源(外部硬件、公共变量、文件读写、公共功能等)
相关文章推荐
- C#中变量与对象、类型与类之间的区别
- C# Serializable
- C# 扩展方法集
- WPF(C#)中Bitmap与BitmapImage相互转换
- WPF(C#)中Bitmap与BitmapImage相互转换
- C#接口的作用
- 在C#中internal关键字是什么意思?
- C#高级编程七十天----dynamic类型
- Visual C# 2010学习笔记二之设置选项控件的使用
- C#文件路径类
- akoj-1291-决战21点(C#)
- C#文件的操作小结
- 在C#中使用devexpress 中的textEDit控件问题
- C#基础系列——多线程的常见用法详解
- 怎样用C#代码屏蔽任务管理器?
- c# RadioButtonList默认第一个
- 在C#中新手易犯的典型缺陷
- Winform窗体传值的方法(示例)
- MFC中调用C#控件(转)
- C#高级编程六十九天----DLR简介