关闭

设计模式之复合模式和总结篇

/** * * 复合模式-->在一个解决方案中结合两个或者多个模式,以解决一般或者重复发生的问题 * 模式-->是在某种情境下,针对某种问题的某种解决方案 * 模式类目完整的描述设计模式 * 三次规则:当你的模式在真实世界中的三个方案中成功的运用 * * OO原则 * 封装变化 * 多用组合 少用继承 * 针对接口编程 而非实现 * 为交互对象之间的松耦合设计而努力...
阅读(997) 评论(0)

设计模式之代理模式浅析

/** * 代理模式: * 为另一个对象提供一个占位符或者替身,以控制对这个对象的访问 * * 按照控制方式的不同: * 远程代理-->控制访问远程对象(不在同一个JVM的对象) * 虚拟代理-->控制访问大开销资源的对象(网络或者IO对象) * 保护代理-->基于权限控制对资源的访问(不同的权限,对资源的访问层次不同) * 缓存代理-->为开销大的运算结果提...
阅读(358) 评论(0)

设计模式之状态模式浅析

/** * * 状态模式: * 允许对象在内部状态改变时改变他的行为,对象看起来好像修改了他的类 * * 封装基于状态的行为,并将行为委托到当前状态 * 通过把状态封装进一个类,把以后要做的事情局部化了 * * 策略模式和状态模式有相同的类图,但是彼此的意图不同 * * State接口定义了一个所有具体状态的共同接口 * Context是一个类,他可以拥有一...
阅读(312) 评论(0)

设计模式之组合模式浅析

/** * * * 组合模式: 可以使组合对象形成树形结构,以表现出整体/部分的结构,并提供一致的方法访问整体和局部 * 组合结构内任意对象称为组件,组件可以是组合,也可以是叶节点 * 客户可以将对象的集合以及个别的对象一视同仁 * * 运用了递归迭代的思想 * * 外部迭代器必须维护它在遍历中的位置,以便外部客户可以通过调用hasNext和next方法来驱动遍历 ...
阅读(330) 评论(0)

设计模式之迭代器模式浅析

迭代器提供一种方式遍历集合,而又无需暴露集合的实现 /** * 设计原则: * 单一原则:一个类应该只有一个引起变化的原因 * 内聚--用来衡量一个类或者模块紧密的达到单一目的或责任 * 高内聚--表示一个类或者模块只支持一个/一组相关功能 * * 迭代器模式: * 提供一种顺序访问聚合对象元素的方法,而又不暴露其内部元素 * 迭代器将遍历聚合对象的任务封装到一...
阅读(493) 评论(0)

设计模式之模板方法浅析

/** * * 设计原则: * 好莱坞原则:别调用我,我会调用你 * 好莱坞法则的目的在于:防止依赖腐败 让高层组件调用底层组件 * * 模板方法模式: 定义了一个算法的框架,允许子类为其提供一个或多个步骤的实现 * 模板方法和策略方法都封装算法,模板使用继承,策略使用组合 * 工厂方法为模板方法的特例 * * 钩子: * 被声明在抽象类中的方...
阅读(214) 评论(0)

设计模式之适配器模式、外观模式浅析

外观模式强调统一和简化接口,而适配器模式强调转换接口 1、适配器模式 /** * * 适配器模式 * 将一种接口转换为用户所期望的另一种接口 * * 对象适配器--使用组合拥有被适配者接口,使用实现实现目的接口 * 类适配器--使用继承拥有被适配者与目的类 * * 目的接口:用户所期望的接口 * 被适配器接口:待转换的接口 * 适配器:实现目的...
阅读(365) 评论(0)

设计模式之单例模式、命令模式浅析

/** * 单例模式: * 确保类只有一个实例,并提供一个全局的访问点 * * 经典的单例模式 * 1、将构造器私有化 * 2、提供一个私有的类的对象的静态成员变量 * 3、提供一个静态的公有的获取对象的方法 * * 经典单例模式中 存在一个问题 当在多线程的环境中 可能会有多个ClassicSingleton的对象 * 当然 可以在getInstance上加上sync...
阅读(337) 评论(0)

设计模式之装饰模式、工厂方法模式、抽象工厂模式浅析

装饰模式: 动态的为对象添加附加功能,提供了一种扩展机制,比继承更具有扩展性 简单工厂:在一个类中处理创建对象的细节 工厂方法模式: * 让子类决定初始化什么样的对象,即将类的实例化推迟到子类中进行 * 工厂方法使用继承,将对象的创建委托给子类进行创建 抽象工厂模式: * 定义了一个接口,提供了创建依赖对象的家族,但是不指定具体创建什么类型 * 抽象工厂使用组合概念...
阅读(373) 评论(0)

设计模式之策略模式、观察者模式浅析

策略模式:将算法簇封装起来,使使用算法的客体和算法之间相互独立 设计原则:1、针对接口编程,而非实现 2、多用组合,少用继承 3、封装变化 观察者模式: 当交互对象之间存在一对多的依赖,一的一方状态一旦发生改变,多的一方即会收到通知,进行状态的更新 对应的即是: 主题(1)与观察者(n) 或者说是可观察者(1)与观察者(n) 主题的作用是 注册、移除、通知观察者 观察者的作用是接收到特定主题的通知,进行状态或者数据的更新 设计原则:为交互对象之间的松耦合度而...
阅读(375) 评论(0)
    个人资料
    • 访问:172972次
    • 积分:3575
    • 等级:
    • 排名:第9650名
    • 原创:190篇
    • 转载:5篇
    • 译文:0篇
    • 评论:23条
    最新评论