设计模式
文章平均质量分 68
siyangshen
这个作者很懒,什么都没留下…
展开
-
设计模式回顾之一:单例模式(Java的4种实现)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 作为一个程序员,我并不知道"茴"字有4种写法。 但是,我知道单例有4种写法。 单例模式 目的:保证一个类仅有一个实例,并提供一个访问它的全局访问点。确保所有实体使用该对象相同的实例,而无需将引用...原创 2012-10-18 23:28:15 · 71 阅读 · 0 评论 -
设计模式回顾之十三:原型模式(Prototype)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 原型模式(Prototype) 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 适用于: 当要实例化的类是在运行时刻指定时,例如:通过动态装载, 或者为了避免创建一个与产...原创 2013-01-05 22:35:02 · 91 阅读 · 0 评论 -
设计模式回顾之十二:迭代器模式(Iterator)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 迭代器模式(Iterator) 提供一种方法顺序访问一个聚合对象中各个元素, 而又不需暴露该对象的内部表示。 适用于: 访问一个聚合对象的内容而无需暴露它的内部表示。 支持对聚合对象的多种遍历。...原创 2013-01-04 22:09:30 · 68 阅读 · 0 评论 -
设计模式回顾之十一:抽象工厂模式(Abstract Factory)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 抽象工厂模式(Abstract Factory) 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 适用于: 一个系统要独立于它的产品的创建、组合和表示时。 一个系统要由多个...原创 2013-01-02 14:00:31 · 91 阅读 · 0 评论 -
设计模式回顾之十:工厂方法模式(FactoryMethod)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 工厂方法模式(FactoryMethod) 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。 适用于: 当一个类不知道它所必须创...原创 2013-01-02 10:31:41 · 90 阅读 · 0 评论 -
设计模式回顾之九:建造者模式(Builder)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 建造者模式(Builder) 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 适用于: 当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时,当构造...原创 2013-01-01 11:48:17 · 99 阅读 · 0 评论 -
设计模式回顾之八:代理模式(Proxy)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 代理模式: 为其它对象提供一种代理以控制对这个对象的访问。 在某些情况下,一个对象不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 为了提供额外的处理或者不...原创 2012-11-11 09:40:59 · 71 阅读 · 0 评论 -
设计模式回顾之七:状态模式(State)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 状态模式: 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 主要解决:当控制一个对象状态的条件表达式过于复杂时,把状态的判断逻辑转移到表示不同状态的一系列类中,可以...原创 2012-11-10 00:02:16 · 79 阅读 · 0 评论 -
设计模式回顾之六:装饰者模式(Decorator)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 装饰者模式: 动态地给一个对象添加职责,可以无需创建子类,而扩展一个对象的功能。 适用情景:各种可选的功能在另一个肯定要执行的功能之前或者之后执行。 实现:创建一个抽象类来表示原类和要添加到这个类...原创 2012-11-09 21:29:12 · 74 阅读 · 0 评论 -
设计模式回顾之五:适配器模式(Adapter)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 适配器模式: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使原本由于接口不兼容而不能一起工作的类可以一起工作。 大致是说:我们需要一种方式,为一个功能正确但接口不合的对象创建一个新...原创 2012-11-07 22:15:59 · 87 阅读 · 0 评论 -
设计模式回顾之四:策略模式(Strategy)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 策略模式: 根据所处的上下文,使用不同的业务规则或算法。 将算法的选择和算法的实现相分离。允许根据上下文进行选择。 让使用算法的类(Context)包含一个抽象类(Strategy),该抽象类有一...原创 2012-11-07 21:37:37 · 78 阅读 · 0 评论 -
设计模式回顾之三:模板方法模式(TemplateMethod)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 模板方法模式(TemplateMethod) 定义一个操作中算法的骨架,而将一些步骤延迟到子类中,不改变算法的结构而重定义它的步骤。 允许定义可变的子步骤,同时保持基本过程一致。 Templat...原创 2012-10-29 20:51:06 · 83 阅读 · 0 评论 -
设计模式回顾之二:外观/门面模式(Facade)
设计模式回顾系列文章: 主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 外观/门面模式(Facade) 希望简化原有系统的使用方式,需要定义自己的接口。 Facade模式简化了对所需子系统的使用过程,但是由于Facade并不完整,因此客户可能无法使用某些功能。 实现...原创 2012-10-21 11:35:20 · 131 阅读 · 0 评论 -
设计模式回顾之十四:享元模式(Flyweight)
设计模式回顾系列文章:主要针对工作中常用常见的设计模式进行整理、总结,同时分享以供大家拍砖。 ------------------------------------------------ 享元模式(Flyweight) 运用共享技术有效地支持大量细粒度的对象。 适用于: 一个应用程序使用了大量的对象,完全由于使用大量的对象,造成很大的存储开销。 对象的大多数状态都可变为外部状态。...原创 2013-01-08 22:58:37 · 282 阅读 · 0 评论