随笔分类 -  一天一个设计模式

坚持近期内每天完成一个设计模式的案例书写与学习。 最迟得在2018.1.15号内完成(前提是工作正常)。
摘要:概念: 模板方法模式是类的行为模式,准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法模式的意思。 结构: 模板方法模式中,抽象类负责定义整个的逻辑框架 阅读全文
posted @ 2018-11-08 15:57 萌新啊萌新是我 阅读(287) 评论(0) 推荐(0) 编辑
摘要:概念: 策略模式属于对象的行为模式,其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响客户端的情况下变化。 结构: 环境(Context)角色:持有一个Strategy的引用。 抽象策略(Strategy)角色:这是一个抽象角色, 阅读全文
posted @ 2018-11-07 17:06 萌新啊萌新是我 阅读(177) 评论(0) 推荐(0) 编辑
摘要:概念: 装饰者模式又称为包装(wrapper)模式。装饰者模式对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。 结构: 装饰者模式以透明的方式给一个对象附加上更多的责任,换而言之,客户端并不会觉得对象在装饰前后有什么不同,装饰者模式可以在不使用创造更多子类的情况下,将对象的功能拓展。 结 阅读全文
posted @ 2018-11-06 16:45 萌新啊萌新是我 阅读(1164) 评论(0) 推荐(0) 编辑
摘要:概念: 适配器模式是把一个类的接口变成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 用途: 就像插头转换器,之前入了switch港版,插头是英式的,还好附赠一个插头转换器,适配器就相当于这个转换器。 种类: 分为类的适配器与对象的适配器两种 类适配器: 把 阅读全文
posted @ 2018-11-02 15:39 萌新啊萌新是我 阅读(199) 评论(0) 推荐(0) 编辑
摘要:概念: 建造模式是对象的创建模式,建造模式可以将一个产品的内部表象(个人理解,可以称为组件)与产品的生产分割开来,从而可以使一个建造过程生产出来具有不同内部表象的产品对象。 概念: 产品的内部表象: 产品不同组成成分构成(组件)这些零件可以是对象,也可以是非对象,称为内部表象(internal re 阅读全文
posted @ 2018-10-31 18:26 萌新啊萌新是我 阅读(276) 评论(0) 推荐(0) 编辑
摘要:概念: 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化,并向整个系统提供这个实例。 特点: 1.单例类只能有一个实例 2.单例类必须创建自己的唯一实例 3.单例类必须给其他所有对象提供这一实例。 饿汉式单例类 由于选用的是静态资源,在类加载的时候,静态变量instance就会被 阅读全文
posted @ 2018-10-31 15:42 萌新啊萌新是我 阅读(191) 评论(0) 推荐(0) 编辑
摘要:为什么引入抽象工厂模式? 或者说抽象工厂模式与工厂方法模式的区别? 工厂方法模式针对的是一类产品的等级结构,而抽象工厂模式针对的是多个产品等级结构(一个产品族)。 引入概念:产品族与产品等级 产品族:指在不同的产品等级结构中,功能相关联的产品组成的家族。产品等级:同类产品的不同产品区分。 抽象工厂的 阅读全文
posted @ 2018-10-25 14:26 萌新啊萌新是我 阅读(191) 评论(0) 推荐(0) 编辑
摘要:工厂方法模式: 定义一个生产产品对象的工厂接口,将创建生产产品的工厂的工作交给子类实现。 随着实际需要的工厂数量增加,简单工厂模式体积会迅速膨胀,代码迅速臃肿严重。 补充:工厂方法模式是针对一类产品的工厂 所以为了代码的可阅读下与可维护性,也做到不同的业务有一定的隔离,将工厂的功能抽象出来成一个接口 阅读全文
posted @ 2018-10-25 11:13 萌新啊萌新是我 阅读(210) 评论(0) 推荐(0) 编辑
摘要:存在的目的: 解耦,在a类中如何想使用b类的某种功能,必须new 一个b对象出来,假如有一个c类,跟b实现了同一个接口,后续想要将b替换成c就需要更改在a中的代码,以此类推,代码的耦合度会随着项目复杂度越来越高,维护成本也会越来越高。 使用简单工厂,使a类与工厂做耦合,然后工厂来提供接口的实现类即可 阅读全文
posted @ 2018-10-25 11:05 萌新啊萌新是我 阅读(199) 评论(0) 推荐(0) 编辑
摘要:序言 已经很久没有写设计模式了。额。。。 本来还想着能多看一点设计模式总结一下呢,然后转眼已经马上要到2018了。有点尴尬啊。 不过也算有收获,毕竟看了别的书籍,也看了一部分Spring的源码,看起来真是晦涩难懂啊。。。 这次写这个模板方法模式也是基于看书过程中的一些契机的,那就是同步锁的一些依赖实 阅读全文
posted @ 2017-12-29 16:21 萌新啊萌新是我 阅读(403) 评论(0) 推荐(0) 编辑
摘要:设计模式分类: 一共分为3大类:创造型模式、结构型模式、行为型模式。 创造型模式:工厂方法(FactoryMethod)、抽象工厂模式(AbstractFactory)、建造者模式(Builder)、单例模式(singleton)、原型模式(prototype)。 结构型模式:适配器模式(adapt 阅读全文
posted @ 2017-11-30 20:27 萌新啊萌新是我 阅读(523) 评论(0) 推荐(0) 编辑
摘要:定义: 单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。即一个类只有一个对象实例。 特点: 1、单例类只能有一个实例。 2、单例类必须自己自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式的要 阅读全文
posted @ 2017-11-29 21:03 萌新啊萌新是我 阅读(243) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示