码迷,mamicode.com
首页 > 其他好文 > 详细

关于设计模式的思考

时间:2015-07-19 16:21:24      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:

1.为什么会出现设计模式

我们将一个功能模块,使用OO来抽象为不同的类,然后这些类协作完成功能。类协作的时候就产生了类与类之间的耦合。类和类的协作产生耦合其实就是new导致的。

例如:

class A{

????public void method(){

????????B b = new B();

????????C c = new C();

????????D d = new D();

????????b.doB();

????????c.doC();

????????d.DoD();

????}

}

如上图所示为了实现类A的method方法,就依赖与类B,C,D,考虑这几个类如果发生变化,则,这里的代码也要变化。所以这里就出现了一种紧耦合。其实只要一出现new则此处的代码就依赖与这个实现了。所以要解耦合,就是要消除这些 new 带来的紧耦合。所谓设计模式,其实就是在不同的耦合场景下,如何将new给去掉的一种方式。例如:创建形模式解决的是new带来的对象耦合问题。再一个设计模式的一个目的就是对重复代码进行重构,例如模板方法模式(行为型模式),重复代码提升为模板方法。设计模式还有一个目的就是实现代码复用:例如适配器模式,就可以实现复用已有的代码,代理模式:增强已有代码的作用。等等。。。

关于设计模式的思考

标签:

原文地址:http://www.cnblogs.com/a-ray-of-sunshine/p/4658732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!