Fork me on GitHub
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 28 下一页

2018年3月3日

适配器模式

摘要: 一、内容 将一个类的接口转换成客户希望的另一个接口。适配器模式使得原来由于接口不兼容而不能一起工作的那些类可以一起工作 二、角色 目标接口(Target) 待适配的类(Adaptee) 适配器(Adapter) 三、两种实现方式 类适配器:使用多继承 对象适配器:使用组合 四、适用场景 想使用一个已 阅读全文

posted @ 2018-03-03 12:31 vmaze 阅读(142) 评论(0) 推荐(0) 编辑

模板方法模式

摘要: 一、内容 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 二、角色 抽象类:定义抽象的原子操作(钩子操作);实现一个模板方法的骨架 具体类:实现原子操作 三、适用场景 一次性实现一个算法的不变的部分 各个子类中的公共行为 阅读全文

posted @ 2018-03-03 12:30 vmaze 阅读(96) 评论(0) 推荐(0) 编辑

策略模式

摘要: 一、内容 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。 二、角色 抽象策略(Strategy) 具体策略(ConcreteStrategy) 上下文(Context) 三、优点 定义了一系列可重用的算法和行为 消除了一些条件语句 可以提供相 阅读全文

posted @ 2018-03-03 12:28 vmaze 阅读(125) 评论(0) 推荐(0) 编辑

观察者模式

摘要: 一、内容 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于他的对象都得到通知并被自动更新。 观察者模式又称‘发布-订阅’模式 二、角色 抽象主题(Subject) 具体主题(ConcreteSubject)——发布者 抽象观察者(Observer) 具体观察者(Concret 阅读全文

posted @ 2018-03-03 12:27 vmaze 阅读(158) 评论(0) 推荐(0) 编辑

迭代器模式

摘要: 一、内容 提供一种方法顺序访问一个聚合函数一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示 二、实现方法 迭代器内部实现:__iter__、__next__方法 三、代码实现 class LinkList: """链表 头结点保存链表的长度""" class Node: def __init 阅读全文

posted @ 2018-03-03 12:26 vmaze 阅读(101) 评论(0) 推荐(0) 编辑

责任链模式

摘要: 一、内容 使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求 直到有一个对象处理它为止 二、角色 抽象处理者 具体处理者 客户端 例:请假部门批准:项目主管 》部门经理 》总经理 三、优点 降低耦合度:一个对象无需知道是其他哪一个对象 阅读全文

posted @ 2018-03-03 12:24 vmaze 阅读(126) 评论(0) 推荐(0) 编辑

单例模式的四种方式

摘要: 一、内容 保证一个类只有一个实例,并提供一个访问它的全局访问点 二、角色 单例 三、使用场景 当类只有一个实例而且客户可以从一个众所周知的访问点访问它时 比如:数据库链接、Socket创建链接 四、优点 对唯一实例的受控访问 单例相当于全局变量,但防止了命名空间被污染 与单利模式功能相似的概念:全局 阅读全文

posted @ 2018-03-03 12:22 vmaze 阅读(274) 评论(0) 推荐(0) 编辑

创建者模式

摘要: 一、内容 将一个复杂对象的构建与它表示分离,使得同样的构建过程可以创建不同的表示 二、角色 抽象建造者 具体建造者 指挥者 产品 建造者模式与抽象工厂模式相似,也用来创建复杂对象。主要区别是建造者模式着重一步步构造一个复杂对象,而抽象工厂模式着重于多个系列的产品对象。 三、优点 隐藏了一个产品的内部 阅读全文

posted @ 2018-03-03 12:17 vmaze 阅读(108) 评论(0) 推荐(0) 编辑

抽象工厂模式

摘要: 一、内容 定义一个工厂类接口,当工厂子类来创建一系列相关或相互依赖的对象 例:生产一部手机,需要手机壳、CPU、操作系统三类对象进行组装,其中每类对象都有不同的种类。对每个具体工厂,分别生产一部手机所需要的三个对象。 二、角色 抽象工厂角色(Creator) 具体工厂角色(Concrete Crea 阅读全文

posted @ 2018-03-03 12:15 vmaze 阅读(94) 评论(0) 推荐(0) 编辑

工厂方法模式

摘要: 一、内容 定义一个用于创建对象的接口(工厂接口),让子类决定实例化哪一个产品类 二、角色 抽象工厂角色(Creator) 具体工厂角色(Concrere Creator) 抽象产品角色(Product) 具体产品角色(Concrete Product) 工厂方法模式相比简单工厂模式将每个具体产品都对 阅读全文

posted @ 2018-03-03 12:05 vmaze 阅读(111) 评论(0) 推荐(0) 编辑

上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 28 下一页

导航