摘要:装饰模式:动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。 Component定义一个对象接口,可以给这些对象动态的添加职责。 ConcreteComponent是定义了一个具体的对象,也可以给这个对象添加一些职责。 Decorator,装饰抽象类,继承了Compon 阅读全文
posted @ 2017-04-26 14:31 小浩学长 阅读 (130) 评论 (1) 编辑
摘要:单一原则(SRP):就一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力,这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。 开闭原则(OCP):软件实体(类 阅读全文
posted @ 2017-04-26 14:27 小浩学长 阅读 (53) 评论 (0) 编辑
摘要:策略模式:定义一系列算法的方法,才概念上看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有算法,减少了各种算法类与使用算法类之间的耦合。 策略模式就是用来封装算法的,但在实践中,我们发现可以用它来封装任何类型的规则,只要在分析过程中听到需要在不同时间应用不同的业务规则,就 阅读全文
posted @ 2017-04-26 14:13 小浩学长 阅读 (24) 评论 (0) 编辑
摘要:简单工厂模式:使用不同的类型type通过多态获取不同的子类引用。 public getBuffer(bufferType){ var buffer:Buffer = null; switch(bufferType){ case vertice:buffer = new VerticeBuffer() 阅读全文
posted @ 2017-04-26 14:11 小浩学长 阅读 (39) 评论 (0) 编辑
摘要:如果把PC电脑理解成大的软件系统,任何部件如CPU、内存、硬盘、显卡都可以理解为程序中封装的类或程序集,由于PC易拔插(高内聚、低耦合)的方式,不管哪一个出问题,都可以在不影响其他部件的前提下进行修改或替换。 如单一原则,就刚才修电脑的事,显然内存坏了,不应该称为更换CPU的理由,他们各自的职责是明 阅读全文
posted @ 2017-04-26 14:10 小浩学长 阅读 (32) 评论 (0) 编辑
摘要:依赖:一个类使用了另外一个类,这种关系是临时的、脆弱的。 如人需要过河,需要船,这时人.过河(船) 中船被当做参数传入,船的实现变化会影响过河方法。 聚合:体现是整体与部分、has-a的关系,此时整体与部分之间是可分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享 阅读全文
posted @ 2017-04-26 14:09 小浩学长 阅读 (81) 评论 (0) 编辑