设计模式
文章平均质量分 82
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。毫无疑问,设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。
「已注销」
战斗意志!
展开
-
设计模式概述
1、什么是设计模式? 设计模式这个词是首先出现在建筑行业的,是因为在20世纪70年代,Christopher Alexander发现许多建筑非常类似,然后想是不是用同一图纸能够在不同的地点建造出相类似的建筑,之后他发表了很多关于工程和建筑模式方面的书籍。于是,软件行业逐渐接纳了这种最初建立于工程和建筑方面的模式思想,发展出了软件业中的设计模式,软件业中模式概念的普及是由GoF合著的书引发的。原创 2015-10-20 11:08:49 · 972 阅读 · 9 评论 -
设计模式之--简单工厂模式
简单工厂模式属于创建型模式,所以是关于创建对象的,举例说明: 需求:创建动物中的猫、狗对象。 首先绘制简单工厂模式的类图: 下面进行代码实现,通过一般方法和应用简单工厂模式方法的代码进行对比,研究简单工厂方法的实际应用与意义: 1、按照一般方法创建猫、狗对象://主类public class AnimalTest { public static void ma原创 2015-10-20 15:14:27 · 1223 阅读 · 11 评论 -
设计模式之--工厂方法模式
在上一篇《设计模式之--简单工厂模式》中,遗留了一个问题:如果我们还要创建鱼的对象,那么我就要去添加鱼这个类,然后去更改工厂类,添加创建鱼的对象的方法,那么,这样就违背了面向对象的设计原则:开闭原则(对修改关闭,对扩展开放)。那么,怎么才能添加了新类 iu,又不用去修改代码呢?原创 2015-10-21 08:23:38 · 1297 阅读 · 11 评论 -
设计模式之--单例模式
1、什么是单例模式? 单例模式也属于创建型模式,所以也是用于创建对象的,顾名思义,“例”是“实例”的意思,“单”是“单独、唯一”的意思,所以单例模式就是指使类在内存中只能有一个对象的模式。2、单例模式的应用? 单例模式在线程池、数据库连接池、网站计数器等其他地方中被应用,因为每次创建线程和数据库连接是相对而言比较麻烦的,所以我们可以只创建一次,然后对其进行重复使用,当被使用完毕之后原创 2015-10-21 16:34:44 · 2514 阅读 · 7 评论 -
设计模式之--装饰模式
1、写在前面:为什么会有装饰模式? 装饰模式是为了解决继承强依赖性和出现大量子类不方便管理问题而出现的。 举例:大家都有自己的手机,而打电话时手机必须具备的基本功能。如果用代码实现的话,按照正常做法,我们首先定义手机类,具有打电话功能。但是随着发展,需求变化了,假设现在部分人们要求打电话要有彩铃,接下来如何设计? 我们利用以前学过的继承,新建彩铃手机类继承手机类可以具备父类的打电原创 2015-10-22 10:56:44 · 1131 阅读 · 10 评论 -
设计模式之--模板方法模式
1、什么是模板方法模式? 官方解释:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 设计模式大咖闫宏解释:模板方法模式是类的行为型模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑原创 2015-10-23 16:51:06 · 1669 阅读 · 12 评论 -
设计模式之--依赖倒置原则
依赖倒置原则所谓依赖倒置原则,就是不论工厂还是产品都应该依赖于抽象,而不是具体实现类。听起来更像是“针对接口编程,而不是针对实现编程”,但是这里依赖倒置原则更强调“抽象”的概念,不要让高层组件依赖低层组件,更不能依赖具体实现类,都要依赖于抽象。依赖倒置原则的核心在于“面向接口编程”,目的在于”解耦“。这里的倒置是什么意思呢?依赖倒置原则中的倒置是指我们的思想要和一般的“自顶向下”结构化设计原创 2015-11-01 09:13:42 · 3862 阅读 · 4 评论