
设计模式
文章平均质量分 78
Markey92
这个作者很懒,什么都没留下…
展开
-
设计模式初探之一------工厂模式
先梳理一下经常混淆的几个概念简单工厂vs工厂方法vs抽象工厂1、简单工厂使用简单工厂的目的就是封装创建对象的代码(封装成一个工厂类),以后如果创建对象的动作发生改变,只需改变工厂类即可。《Head First设计模式》中认为简单工厂不是一个设计模式,而是一种编程习惯,不管他算不算一种设计模式,只要可以优化代码,就值得我们学习与实践。简单工厂本身的定义很简单,使用起来也不复杂原创 2017-06-03 22:37:39 · 299 阅读 · 0 评论 -
设计模式初探之二------使用装饰者模式
上篇博文是对工厂模式的一点理解和示例演示。后续发现其中使用的例子可以使用装饰者模式进行优化。装饰者模式:23种设计模式之一,英文叫DecoratorPattern,又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。所谓装饰者,可以在不改变原有代码的前提,拓展一个对象的功能。先前原创 2017-06-09 21:42:28 · 316 阅读 · 0 评论 -
设计模式之代理模式------动态代理(示例说明)
代理模式为一个对象提供一个替身或占位符以控制对这个对象的访问。通俗点说就是通过使用代理对象来控制对真实对象访问的控制。假设存在一个A对象,他有一个方法叫helloworld();我们想要控制只有部分人才能调用helloworld方法,这是我们采用代理模式,为A对象创建一个代理对象(ProxyA)使用者不直接调用A的方法,而是调用ProxyA的方法,并在ProxyA中对使用者原创 2017-07-16 18:25:48 · 274 阅读 · 0 评论 -
设计模式初探之三------单例模式与多线程
单例模式:保证系统中一个类只有一个实例。即一个类只有一个对象实例 如何实现:一是单例模式的类只提供私有的构造函数,二是类定义中含有一个该类的静态私有对象,三是该类提供了一个静态的公有的函数用于创建或获取它本身的静态私有对象。以下是具体示例:1、假设有一个企业名为HeadFirstPizzaEnterprise,因为整个程序中只允许有一个HeadFirstPizzaEnt原创 2017-06-11 17:11:34 · 363 阅读 · 0 评论