博客专栏  >  架构   >  可扩展性与设计模式

可扩展性与设计模式

从可扩展性角度简单介绍基本设计模式

关注
7 已关注
17篇博文
  • 命令模式(Command Pattern)

    命令模式定义:命令模式将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其它对象。命令模式也支持可撤销操作。 这个模式貌似和Observer Pattern很像,实际上区别不小: 1,...

    2013-06-07 11:34
    1058
  • 单例模式(Singleton Pattern)

    单例模式定义:单例模式确保一个类只有一个实例,并提供一个全局访问点 public class Singleton { public static Singleton instance; pri...

    2013-06-03 13:48
    947
  • 迭代器模式(Iterator Pattern)

    1

    2013-07-16 11:08
    1160
  • 组合模式(Composite Pattern)

    组合模式定义:

    2013-07-22 11:41
    901
  • 适配器模式(Adapter Pattern)

    适配器模式定义:Adapter Pattern将一个类的接口,转换成客户期望的另一个接口,Adapter Pattern让原本接口不兼容的2个类可以合作无间。

    2013-06-08 10:19
    898
  • 状态模式(State Pattern)

    状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类

    2013-07-29 17:25
    944
  • 抽象工厂模式(Abstract Factory Pattern)

    抽象工厂模式定义:抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类 其实和策略模式还是蛮像的,只不过现在抽象分离出去的不是一个普通类,而是一个工厂类,并且工厂类依赖于多...

    2013-06-03 09:24
    966
  • 观察者模式(Observer Patten)

    观察者模式的定义:观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新 考虑到如下一个场景,记者每次获得独家新闻,都需要通知人民日报和新华日报,h...

    2013-05-25 11:53
    1069
  • 外观模式(Facade Pattern)

    外观模式定义:外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。 这个模式比较简单,一个普通出门流程:洗脸 - 刷牙 - 穿衣 - 背包 pu...

    2013-06-08 13:09
    821
  • 模板方法模式(Template Method Pattern)

    模板方法模式定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的条件下,重新定义算法中的某些步骤 例如:准备一杯咖啡或准备一杯柠檬茶有很多相似之处 准...

    2013-06-28 15:17
    1062
  • 工厂方法模式(Factory Method Pattern)

    工厂方法模式定义:工厂方法模式定义了一个创建方法的接口,但由子类决定要初始化的类是哪一个,工厂方法让类把实例化推迟到子类。 两家PizzaStore,NYPizzaStore提供纽约风味的pizza,...

    2013-05-30 18:40
    962
  • 代理模式(Proxy Pattern)

    代理模式:为另一个对象提供一个替身或占位符以控制对这个对象的访问 代理模式有很多变体,例如: 远程代理:控制访问远程对象(java RMI) 虚拟代理:控制访问创建开销大的对象 保护代理:基于权限控制...

    2013-08-28 16:55
    994
  • 装饰模式(Decorate Pattern)

    装饰模式定义:装饰模式动态的将责任附加到对象上,若要扩展功能,装饰模式可以提供比继承更有弹性的替代方案。装饰模式分为3个部分:1,抽象组件 2,具体组件 3,装饰者。具体组件和装饰者都继承自抽象组件,...

    2013-05-28 17:29
    16956
  • 策略模式(Strategy Pattern)

    策略模式定义:策略模式定义了算法族,将算法分别封装起来,让他们之间可以互相替换。此模式让算法的变化独立于使用算法的客户我们来看一个商场打折的例子public interface Discount { ...

    2018-04-07 10:13
    1297
  • 简单工厂(Simple Factory)

    简单工厂并不算23种基本设计模式,只是对程序功能的简单封装、解耦参考如下代码:public interface Employee { public void doJob(); } public...

    2013-05-30 14:50
    884
  • UML类图(Class Diagram)中类与类之间的关系及表示方式

    类之间大体分为5种关系: 1,依赖关系(Dependency)单向,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类,是一种“use a”关系如果A依赖于B,则B表现为A的局部变量,方...

    2013-05-21 22:28
    58610
  • OO设计原则

    软件维护时间将要占软件生命周期的90%,说明软件的可扩展性是十分重要的遵守设计原则将会极大提高软件的可维护性和可扩展性,使我们有时间专注于更重要的部分每一个设计模式都体现了一个或多个设计原则: 一,单...

    2013-05-20 21:57
    1079

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部