随笔分类 -  设计模式

设计模式-抽象工厂
摘要:工厂方法:用于解决产品线单个产品的创建,工厂方法类与产品线类具有相同的继承结构 抽象工厂:用于解决产品家族多个产品的创建。 由工厂方法模式带来的问题 界面皮肤库 工厂方法模式的设计效果 缺点: 当需要增加新的皮肤时,虽然不要修改现有代码,但是需要增加大量类,针对每一个新增具体组件都需要增加一个具体工 阅读全文

posted @ 2018-08-07 22:05 手握太阳 阅读(180) 评论(0) 推荐(0)

设计模式-设计原则-迪米特法则
摘要:面向对象设计原则之迪米特法则 2017年10月12日 09:43:03 阅读数:64 2017年10月12日 09:43:03 阅读数:64 阅读数:64 迪米特法则来自于1987年美国东北大学(Northeastern University)一个名为“Demeter”的研究项目。迪米特法则又称为最 阅读全文

posted @ 2018-08-07 20:46 手握太阳 阅读(257) 评论(0) 推荐(0)

设计模式-设计原则-合成复用原则
摘要:面向对象设计原则之合成复用原则 合成复用原则又称为组合/聚合复用原则(Composition/Aggregate Reuse Principle, CARP),其定义如下: 合成复用原则(Composite Reuse Principle, CRP):尽量使用对象组合,而不是继承来达到复用的目的。 阅读全文

posted @ 2018-08-07 06:47 手握太阳 阅读(2491) 评论(0) 推荐(0)

设计模式-设计原则-接口隔离原则
摘要:(转)面向对象设计原则之接口隔离原则 2017年10月10日 15:20:15 阅读数:82 2017年10月10日 15:20:15 阅读数:82 阅读数:82 接口隔离原则定义如下: 接口隔离原则(Interface Segregation Principle, ISP):使用多个专门的接口,而 阅读全文

posted @ 2018-08-07 06:42 手握太阳 阅读(172) 评论(0) 推荐(0)

设计模式-设计原则-依赖倒转原则(一)
摘要:(转)面向对象设计原则之依赖倒转原则 如果说开闭原则是面向对象设计的目标的话,那么依赖倒转原则就是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现。依赖倒转原则是Robert C. Martin在1996年为“C++Reporter”所写的专栏Engineering Notebook的第三篇 阅读全文

posted @ 2018-08-07 06:34 手握太阳 阅读(495) 评论(0) 推荐(0)

设计模式-设计原则-开闭原则是目标,里氏代换原则是基础,依赖倒转原则是手段
摘要:开闭原则是目标,里氏代换原则是基础,依赖倒转原则是手段,它们相辅相成,相互补充,目标一致,只是分析问题时所站角度不同而已。 阅读全文

posted @ 2018-08-07 06:32 手握太阳 阅读(208) 评论(0) 推荐(0)

设计模式-设计原则-里氏代换原则
摘要:(转)面向对象设计原则之里氏代换原则 里氏代换原则由2008年图灵奖得主、美国第一位计算机科学女博士Barbara Liskov教授和卡内基·梅隆大学Jeannette Wing教授于1994年提出。其严格表述如下:如果对每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所 阅读全文

posted @ 2018-08-06 22:26 手握太阳 阅读(195) 评论(0) 推荐(0)

设计模-设计原则-开闭原则
摘要:(转)面向对象设计原则之开闭原则 有两个含义: 有两个含义: 有两个含义: 1、一个实体对修改关闭,对扩展开放 2、其他实体的扩展,不需要(不能)修改本实体 开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则。开闭原则由Bertrand Meyer于1988年提出,其定义如下: 阅读全文

posted @ 2018-08-06 22:18 手握太阳 阅读(208) 评论(0) 推荐(0)

设计模式-设计原则-单一职责原则
摘要:(转)面向对象设计原则之单一职责原则 单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大小。单一职责原则定义如下: 单一职责原则(Single Responsibility Principle, SRP):一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起 阅读全文

posted @ 2018-08-06 22:04 手握太阳 阅读(159) 评论(0) 推荐(0)

设计模式-分类
摘要:逻辑分类: 常用设计模式一览表 类型 模式名称 学习难度 使用频率 创建型模式 Creational Pattern 单例模式 Singleton Pattern ★☆☆☆☆ ★★★★☆ 简单工厂模式 Simple Factory Pattern ★★☆☆☆ ★★★☆☆ 工厂方法模式 Factory 阅读全文

posted @ 2018-08-06 21:59 手握太阳 阅读(257) 评论(0) 推荐(0)

设计模式-7中常用设计原则简述与记忆方法
摘要:对于单个类/接口而言:单一职责、接口隔离、开闭 对于继承而言:里氏替换 对于顶层设计:依赖倒置、迪米特 对于底层设计:合成复用 7种常用的面向对象设计原则 设计原则名称 定 义 单一职责原则 (Single Responsibility Principle, SRP) 一个类只负责一个功能领域中的相 阅读全文

posted @ 2018-08-06 21:56 手握太阳 阅读(217) 评论(0) 推荐(0)

设计模式-概述
摘要:为什么要设计模式: 同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一 7中常用设计原则 阅读全文

posted @ 2018-08-06 21:54 手握太阳 阅读(106) 评论(0) 推荐(0)

设计模式-学习
摘要:https://blog.csdn.net/csdn_ds/article/category/6937392 http://www.cnblogs.com/cbf4life/tag/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/ 《C#设计模式》PPT及源码分享 http 阅读全文

posted @ 2018-08-06 21:19 手握太阳 阅读(114) 评论(0) 推荐(0)

设计模式-设计原则-依赖倒转原则(二)
摘要:转(http://www.cnblogs.com/sjms/archive/2010/06/19/1760692.html) IoC——Inversion of Control 控制反转 DI——Dependency Injection 依赖注入 1:如何理解IoC/DI 要想理解上面两个概念,就必 阅读全文

posted @ 2018-08-05 19:39 手握太阳 阅读(173) 评论(0) 推荐(0)

设计模式-工厂方法
摘要:代码: 抽象工厂代码: 抽象产品代码: 具体工厂代码: 具体产品代码: 客户端代码: 阅读全文

posted @ 2018-08-05 19:18 手握太阳 阅读(139) 评论(0) 推荐(0)

设计模式-简单工厂
摘要:(2) Chart类的职责过重,它负责初始化和显示所有的图表对象,将各种图表对象的初始化代码和显示代码集中在一个类中实现,违反了“单一职责原则”,不利于类的重用和维护;而且将大量的对象初始化代码都写在构造函数中将导致构造函数非常庞大,对象在创建时需要进行条件判断,降低了对象创建的效率。 (3) 当需 阅读全文

posted @ 2018-08-05 18:12 手握太阳 阅读(141) 评论(0) 推荐(0)

设计模式-扩展-父类对子类的要求
摘要:父子类继承时,有两个视角: 1、站在子类的视角: 1、在子类中如何使用父类中定义的方法 2、可以通过在子类中增加方法以实现新的功能 3、在子类中重写父类的方法可以改变程序的行为 2、站在父类的视角: 1、期待子类去实现抽象方法 2、要求子类去实现抽象方法(模版方法模式中) 阅读全文

posted @ 2018-08-05 17:02 手握太阳 阅读(469) 评论(0) 推荐(0)

设计模式-模版方法
摘要:模板方法在一些开源框架中应用非常很多,基础系统提供了一个抽象类,然后开源框架写了一堆子类,如果你需要扩展功能,可以继承了这个抽象类,然后覆写protected方法,再然后就是调用一个类似execute方法,就完成你的扩展开发,非常容易扩展的一种模式。 阅读全文

posted @ 2018-08-05 16:37 手握太阳 阅读(145) 评论(0) 推荐(0)

设计模式-单例模式
摘要:总结 需要解决的问题: 避免多个实例造成系统资源浪费 避免多个实例之间状态不一致而引起系统故障 现在一个类能够被创建多个实例,问题的根源在于类的构造方法是公开的,也就是可以让类的外部来通过构造方法创建多个实例。换句话说,只要类的构造方法能让类的外部访问,就没有办法去控制外部来创建这个类的实例个数。 阅读全文

posted @ 2018-07-31 22:04 手握太阳 阅读(112) 评论(0) 推荐(0)

设计模式-桥接模式
摘要:将一个业务分为两类角色,一类是管理者、一类负责执行者 管理者:管理执行者的工作过程、工作结果、工作启动资源、环境等 执行着:统一接口,负责干活 管理者对应 类的功能层次结构 执行者对应 类的实现层次结构 什么情况下会用桥接模式? 简单的说就是我们在抽象对象的特征时,对象的特征属性又很抽象,不得不把属 阅读全文

posted @ 2018-07-31 21:53 手握太阳 阅读(230) 评论(0) 推荐(0)

导航