设计模式概述
2015-07-02 21:51
106 查看
一、设计模式的意义
什么是设计模式?它有什么意义? 官方文献给的定义是:设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代 码可靠性。 就我简单直接粗暴的理解:设计模式就是一种代码设计的总结和积累;是一种不断总结、修改、积累的可复制粘贴的代码设计。其目的,说穿了就是为了以后再碰到类似问题的时候,直接复制粘贴整个代码文件进行应用,或者复制粘贴代码后,可以直接在其基础上添加其它的功能模块,而不影响整个代码的架构和功能。 而它的设计原则,官方一大堆。目前我的原则是:不影响以后的迭代即可。
二、设计模式的分类
官方文献认为:总体来说设计模式分为三大类(共23中): 创建型模式,共5种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共7种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共11种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 还有人认为,还有两类:并发型模式和线程池模式。 我个人认为,设计模式应该有无限多种,我们在使用设计模式的时候,可以参考已有的设计模式,但不应该局限于我们已知的设计模式。 另外,第一次写csdn的微博,只想吐槽一下这坑爹的编辑器!
相关文章推荐
- IOS--UI--LessonButton UIImage
- JavaScript实现高级科学计算器库
- 黑马程序员——Java基础--集合(二)
- 链式队列的实现(c++)
- Mysql有效索引和无效索引的介绍
- Solr之分组查询facet
- phalcon第三个例子(日志类Logger)ubuntu14.04 apache通过apt-get安装
- 网站开发负责人需要注意那些事?
- mysql or条件可以使用索引而避免全表
- 用VideoView写的小程序运行时黑屏
- Solr之配置suggest功能
- JDBC核心就几句
- 使用SecureCRT连接ubuntu
- 使用SecureCRT连接ubuntu
- Android Service 服务(一)—— startService方式
- Git恢复操作
- 使用SecureCRT连接ubuntu
- 使用SecureCRT连接ubuntu
- Spring常用注解
- MySQL何时使用索引 何时不使用索引