定义:设计模式实际上是一套被反复使用,思想成熟,经过分类和无数实践设计经验的总结。设计模式存在的根本原因是为了代码复用,增加可维护性。有如下原则:1、开闭原则:对扩展开放,对修改关闭。2、里氏转换原则:子类继承父类,单独调完全可以运行。3、依赖倒转原则:引用一个对象,如果这个对象有底层类型,直接引用...
分类:
其他好文 时间:
2015-08-11 11:50:41
阅读次数:
107
面向对象的原则:开闭原则(Open Closed Principle,OCP)里氏代换原则(Liskov Substitution Principle,LSP)依赖倒转原则(Dependency Inversion Principle,DIP)接口隔离原则(Interface Segregation...
分类:
其他好文 时间:
2015-08-04 15:10:41
阅读次数:
202
简单说吧,该模式就只有两种角色,观察者对象(主题)和被观察者对象(观察者)。主题接收被观察者,有更新就通知被观察者。根据依赖倒转原则高内聚低耦合的目标,我们分别对此增加两个抽象接口。
概念:
观察者模式(Observer),又称发布\订阅模式(Publish\Subscribe)。它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有...
分类:
其他好文 时间:
2015-07-29 19:26:01
阅读次数:
135
原则:依赖倒转原则:针对接口编程,依赖于抽象而不依赖于具体;一、创建接口:发送消息package Factory;public interface Sender{ public void Send();}二、创建两个实现类1、发送邮箱package Factory;public class M...
分类:
其他好文 时间:
2015-07-24 15:52:59
阅读次数:
103
在学习设计模式时我就有一个疑问,关联和继承除了用法上的区别,好像在内存上并没有什么区别,继承也是父类作为了子类的元素(内存上),关联也是这样。而且关联好像更占内存一些。这就是设计模式里问题了“依赖倒转原则”。继承分为public继承,protect继承,private继承public:父类中的pub...
分类:
编程语言 时间:
2015-07-18 19:46:05
阅读次数:
150
概念:
工厂方法模式定义了一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。
组成角色:
在简单工厂模式中,我们把动态创建具体产品类对象放在工厂类。由于它负责具体产品对象的分支判断,容易产生高耦合。根据依赖倒转原则,我们在此基础上,把工厂类抽象为一个接口,然后让具体工厂去实现该接口方法。组成角色为:...
分类:
其他好文 时间:
2015-07-01 18:20:38
阅读次数:
119
面向对象的特征:
主要有抽象、继承、封装和多态四个方面,下面是我们来详细分析它们的含义:
..........
面向对象的“六原则一法则”:
单一职责原则、开闭原则、依赖倒转原则、里氏替换原则、接口隔离原则、合成聚合复用原则和迪米特法则。
................
分类:
其他好文 时间:
2015-06-09 09:58:19
阅读次数:
3045
外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
外观模式完美的体现了依赖倒转原则和迪米特法则的思想,所以是比较常见的设计模式之一。
外观模式结构图如下:
定义三个子系统类public class SubSystemOne { public void methodOne(){
System.o...
分类:
其他好文 时间:
2015-06-07 14:38:46
阅读次数:
122
这几天囫囵吞枣看了下《设计模式其实很简单》,这本书通俗易懂,说了23种设计模式。自己看书比较仓促,看书时也不愿动脑子(这一直是致命缺点),先简单的抄下这些模式,希望日后能够回补。设计模式中的六大设计原则单一职责原则。里氏代换原则。开放-封闭原则。依赖倒转原则。合成/聚合复用原则。迪米特法则。下面.....
分类:
其他好文 时间:
2015-05-29 23:00:04
阅读次数:
202
背景 ????本文标题为什么叫小菜学习设计模式,原因是本文内容主要是学习《大话设计模式》时的笔记摘要部分,当然,并不是记录书中小菜的学习过程,这个完全没有意义,而是指本人学习设计模式的成长之旅...
分类:
其他好文 时间:
2015-05-27 14:10:21
阅读次数:
138