博客专栏  >  架构   >  设计模式

设计模式

系统介绍常见设计模式,并提供简单易懂的示例性demo

关注
0 已关注
11篇博文
  • Design Pattern(1)-Template Method Pattern

    编程时为了提高复用性、可维护性,我们希望把共性的东西提取到一处,这是很自然的想法。但是往往有的时候不是那么容易提取共性, 因为他只是类似,并非一致,又夹杂着差异。典型的例子是JDBC代码。 那么为了...

    2017-03-09 11:15
    266
  • Design Pattern(2)-Strategy Pattern

    试想这样的场景,一个员工,在面向对象设计里,它自己维护了自己的工作时长,职位类型等成员变量,那么我们做公司管理系统时就可能希望将计算工资这个方法放在员工类里,当我们想要知道一个员工的工资,就调用这个员...

    2017-03-09 16:35
    146
  • Design Pattern(3)-State Pattern

    学过编译原理应该知道有限状态机,状态模式就是适用于那种希望 一个对象在不同状态下呈现不一样的行为的一种design pattern。我们以一个实例来诠释,有一个Door对象,Door对象有两个状态:O...

    2017-03-09 20:55
    247
  • Design Pattern(4)-Decrator Pattern

    装饰者模式,比前面几种design pattern都复杂,一般情况下并不应该用它。它是为了尽量不修改原有类、接口的情况下为其动态添加功能。但是如果允许修改原有类,我觉得还是应该修改原有类,以达到更好的...

    2017-03-09 22:47
    124
  • Design Pattern(5)-Visitor Pattern

    典型应用场景一个集合容器,里面有一系列元素,但是不同的元素类型不太一样,例如A,B,C,D,但是不同的元素肯定继承自同一个父类或者实现同一个接口,不妨设为Element,毕竟这样才能在同一个集合数据结...

    2017-03-22 16:04
    291
  • Design Pattern(6)-Adapter Pattern

    应用场景试想,你已经有了一个类A,它具有一些功能。但是现在你需要另一些功能,这些功能可以复用A来实现,那么非常自然地应该想到让新的类来持有A的引用,实现组合结构,转发请求来实现新的功能。类图实例代码T...

    2017-03-22 16:24
    204
  • Design Pattern(7)-Composite Pattern

    适用场景组合模式适用于树形结构。试想一个公司的所有员工,肯定有上下级关系,除了最底层的员工,其他员工都有自己的领导和自己管理的员工。Composite Pattern通过让每个非最底层员工持有自己的直...

    2017-03-26 14:02
    188
  • Design Pattern(8)-Interpreter Pattern

    适用场景提供一种方式,用来定义语言的文法表达,并解释执行。类图实例代码这个地方,定义了一个加法表达式,为了简单起见,只有加法,没有其他运算,且假设每个变量名长度只有一个字母。 AbstractExp...

    2017-03-26 18:54
    209
  • Design Pattern(9)-Facade Pattern

    适用场景1.使一个子系统更容易被外部所使用; 2.将设计很差的API wrap成更合理的API; 3.减少外部对子系统内部的依赖类图

    2017-03-26 19:13
    311
  • Design Pattern(10)-Immutable Pattern

    适用场景制作不变类,为了安全性之类的考量。弱不变模式与强不变模式这一点参考两种不变模式的定义 这篇文章中讲的多线程的问题,个人理解如下:A线程遍历users数组还没遍历到users[2],假设use...

    2017-03-26 19:55
    276
  • Design Pattern(11)-Iterator Pattern

    适用场景用于遍历容器,隐藏访问细节,为所有的容器提供统一的遍历接口。类图实例代码我写了一个int的容器用来简单说明一下 Aggregate:public interface Aggregate { ...

    2017-03-26 20:24
    348

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