
设计模式专题
Leon-Zheng
未来已来
展开
-
行为型模式01-观察者模式介绍
观察者模式,又称发布订阅模式。被观察者状态发生变更的时候,会主动通知注册的观察者。观察者再执行定义好的操作。 借助Java SDK中的Observable类和Observer接口可以方便的实现观察者模式。 被观察者继承Observable接口,实现setChanged方法;观察者实现Observer接口,重写update方法,执行指定动作。 被观察者:原创 2017-04-11 12:54:29 · 454 阅读 · 0 评论 -
结构型模式01-代理模式(为其他对象提供一种代理以控制这个对象的访问)
代理模式是比较常见的一种设计模式。通过代理模式,我们可以很方便通过代理对象来访问真正对象的方法。代理模式,体现的是一种对象访问的控制。我们可以原封不动的调用被代理对象的方法,也可以在调用前后增加增强片段(advice),实现额外的特定操作,比如记日志,事务管理等。先来看下代理模式通用图(来源:设计模式之禅):依据图,写了段简单的示例代码:/** * Create b原创 2017-04-23 17:32:47 · 790 阅读 · 0 评论 -
结构型模式02-装饰者模式(动态为一个对象添加职责,就增加功能而言,装饰模式比生成子类更加灵活)
装饰者模式,名字很贴切,装饰一词,本来就是在原有的基础上增添点东西。而在软件领域,增加功能是一件多么常见的事情。策划最常说的就是,“你看下,这里能不能加个.....”,QA的绩效考核上,还要包含建议数目,如果都要完成这些建议,那么开发的工作量可能就翻了一倍哈哈哈。对比继承方式带来的强依赖而言,以及父类变更对子类的影响之大,装饰者取了巧,虽然从抽象意义上,装饰者不是事实意义上的“孩子”类(或者说原创 2017-04-27 01:33:02 · 1749 阅读 · 1 评论 -
23种设计模式意图汇总
工厂方法定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。抽象工厂提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。建造者模式将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。原型模式原创 2018-01-09 22:42:35 · 940 阅读 · 0 评论