摘要: 模板方法模式: (就是在抽象基类中定一个复用的方法!) 在一个方法中定一个算法的骨架,而将一些步骤延迟到子类中。 模板方法使得子类可以再不改变算法结构的情况下,重新定义算法中的某些步骤。 实例: 泡茶的步骤分别: 1、把水煮开 2、用开水冲泡茶叶 3、把茶倒进杯子里 4、加柠檬 泡咖啡的步骤为: 1 阅读全文
posted @ 2019-01-06 23:10 第五 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 适配器模式: 将一个类的接口,转换成客户期望的另一个接口。 适配器让原本接口不兼容的类可以合作无间。 如: 实例: JAVA.IO 阅读全文
posted @ 2019-01-06 22:05 第五 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 命令模式: 解决「请求者」与「执行者」之间的耦合。 比如: 一个面馆子里来个一位客人,客人在菜单上写了「鱼香肉丝盖饭」并交给了服务员,服务员把菜单拿到后堂,交给了大厨!!! 其中,订单就起解耦的作用!!! 原理: Command 是命名模式的抽象接口,所有的具体命名都需要实现这个接口 Client 阅读全文
posted @ 2019-01-03 00:50 第五 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 单例模式: 和new类似,用来创建实例。 单例对象的类保证了只有一个实例存在。 原理: 1、该类的构造函数定义为私有方法,这样外面不能通过new实例化此类,只能在类里面实例化 2、类返回一个获取实例的方法 构建方式: 懒汉方式:全局的单例实例在第一次被使用是创建 饿汉方式:全局的单例实例在类装载时构 阅读全文
posted @ 2019-01-02 13:07 第五 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 是什么? 怎么用? 原理是什么? 在什么情况下用? 抽象工厂模式: 提供了一种方式,可以将一组具有同一主题的单独的工厂封装起来。 提供接口,创建一系列相关或独立的对象,而不指定这些对象的具体类。 适用哪些情况: 1、一个系统要独立于它产品的创建、表示和组合时 2、一个系统要由多个产品系列中的一个来配 阅读全文
posted @ 2019-01-01 18:02 第五 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 是什么? 怎么用? 适用哪些情况? 工厂方法模式: 在不指定对象具体类型的情况下创建对象。 主要目的是创建对象!!! 以下情况可用工厂方法模式: 1、创建对象需要大量重复的代码 2、创建对象时需要用到其他的信息,而这些信息不应该包含在这个类中 3、创建对象的生命周期需统一管理 原理: Product 阅读全文
posted @ 2019-01-01 16:34 第五 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 是什么? 怎么用? 在什么情况下用? 例子! 策略模式: 对象有某个行为,但在不同的场景下,改行为有不同的实现算法。 比如: 每个人都要交「个人所得税」,但「在美国交的个人所得税」和「在中国交的个人所得税」有不同的算法。 再比如: 鸭子(所有的鸭子)有翅膀,但木头做的鸭子不会飞,活的鸭子会飞,机械鸭 阅读全文
posted @ 2019-01-01 12:56 第五 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 是什么? 怎么用? 什么情况下用? 实例! 观察者模式: 一个目标对象管理所有依赖于它的观察者对象,并且当它本身的状态改变时主动发出通知。 这时候就有问题了,目标怎么知道谁是观察者?谁不是观察者?而且目标要怎么通知观察者? (个人感觉两个类通信就能用到这东西) 使用场景: 今日头条文章发布后需要一系 阅读全文
posted @ 2019-01-01 01:01 第五 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 是什么? 怎么用? 在什么情况下用? 实际例子! 修饰模式: 在面向对象的编程中,一种动态的向类里添加新行为的设计模式。 比如: window窗口系统,我们需要往里面添加竖直方向和水平方向的滚动条,如果全部code全写在同一个类(方法)里,那以后扩展或者修改某一个模块功能就很有可能影响到原有的其他功 阅读全文
posted @ 2018-12-31 23:59 第五 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 数据卷(data volumes) 容器与宿主之间的数据交互数据卷的操作类似于linux中对文件和目录的mount操作。在宿主主机于docker容器之间,数据卷的交互类似于在容器中新建一个文件目录,将宿主机器的某个文件目录挂载到容器的 数据卷操作 数据卷容器(data volumes dontain 阅读全文
posted @ 2018-08-29 16:28 第五 阅读(499) 评论(0) 推荐(0) 编辑