设计模式
文章平均质量分 78
zyaizz
这个作者很懒,什么都没留下…
展开
-
设计模式原来如此-单例模式(Singleton Pattern)
简单介绍一下我对Singleton的理解,说的不好请大家多多指点。单例模式的简单定义就是确保一个类只有一个实例,并提供一个全局访问点。单例模式有哪些用处呢?有一些对象其实我们只需要一个,比方说:线程池,缓存,对话框,处理偏好设置和注册表的对象,日志对象,充当打印机,显卡等设备的驱动程序的对象。事实上,这类对像只能有一个实例,如果制造出多个实例,就会导致许多问题产生,例如:程序的行为异常原创 2013-05-24 10:44:44 · 393 阅读 · 0 评论 -
设计模式原来如此-策略模式(Strategy Pattern)
策略模式中体现了两个非常基本的面向对象设计的原则:1.封装变化的概念。2.编程中使用接口,而不是对接口的实现。策略模式的定义:定义一组算法,将每个算法都封装起来,并使它们之间可以互换。策略模式使这些算法在客户端调用它们的时候能够互不影响地变化。策略模式的意义:策略模式使开发人员能够开发出由许多可替换的部分组成的软件,并且各个部分之间是弱连接的关系。弱连接的特性使原创 2013-06-08 16:00:49 · 472 阅读 · 0 评论 -
设计模式原来如此-代理模式(Proxy Pattern)
代理模式(Proxy Pattern)是一个使用率非常高的模式,其定义如下:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式一般涉及到的角色有 1.抽象角色:声明真实对象和代理对象的共同接口2.代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同原创 2013-07-10 09:12:32 · 667 阅读 · 0 评论 -
设计模式原来如此-代理模式的实际应用
下面通过一个项目中经常用到的功能来举下动态代理是实例,实例有2个功能:1是记录用户登录的日志。2是计算一下添加算法的时间。为了简单起见,2个功能忽略了详细算法。如果使用静态代理就得建2个代理类,分别做这2个功能,如果功能很多,就要建立很多类。使用动态代理的好处就是建立一个类就可以搞定。用户登录package com.zhouyu.myProxy;public interface Use原创 2013-07-10 10:42:34 · 683 阅读 · 0 评论 -
设计模式原来如此-观察者模式(Observer Pattern)
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够主动更新自己。 观察者模式的组成1. 抽象主题角色(Subject):把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提供了一个接口,可以增加和删除观察者角色。一般用一个抽象类或接口来实现。2.原创 2013-07-16 15:05:24 · 742 阅读 · 0 评论