Design Pattern - 装饰模式

摘要: 装饰模式 动态 地给一个对象 添加一些额外的职责 。就增加功能来说,Decorator模式相比生成子类更为灵活。 对于对象功能的扩展, 面向对象一般通过继承来解决, 但这种方式缺乏灵活性, 而且随意定义子类容易导致类层次结构过快膨胀. 场景, 当类的核心职责和主要行为没有发生变化, 仅仅需要动态对类对象添加一些装饰性的功能, 比如给人穿衣服...... 如下图所示, 只是... 阅读全文
posted @ 2013-02-05 16:47 fxjwind 阅读(346) 评论(0) 推荐(0)

Design Pattern - 工厂模式

摘要: 本质上而言, 这种模式就是用类来封装和拆分条件分支(if else, switch case), 带来的问题就是其实用类封装也是很麻烦的. 其实对于更高级的语言, 如动态语言python(通过eval, 如下例), 或FP语言(通过pattern match), 这种模式根本就没有存在的价值. 工厂模式概述 工厂模式, 包括简单工厂, 工厂方法, 抽象工厂, 为什么叫工厂, 因为工... 阅读全文
posted @ 2013-02-05 16:37 fxjwind 阅读(307) 评论(0) 推荐(0)

Design Pattern - 7原则

摘要: 很多程序员用面向对象语言写了多年的代码, 仍然不知道设计模式为何物, 这不奇怪, 设计模式并不是非有不可,可是它能让代码变的更美好。 程序员大可闷头堆代码, 复制粘贴, 然后不断的感慨代码难以维护, 难以复用, 难以扩展, 而继续不思进取。 当然也可以选折不断去追求更美好, 更合理的代码, 把自己从bug调试, 需求变动等噩梦中拯救出来, 进而真正体会到编码的乐趣。 你如果选... 阅读全文
posted @ 2013-02-05 16:09 fxjwind 阅读(313) 评论(0) 推荐(0)