设计模式
文章平均质量分 93
一步步深入设计模式的学习与应用
qqchaozai
这个作者很懒,什么都没留下…
展开
-
【设计模式】设计原则与设计模式
前言一切设计都为了代码的可扩展性和可读性,都为了应对变化!我们是基于设计原则的思想,来选择设计模式去实现,代码可读,可扩展的目标!1 设计原则1.1 开闭原则(Open-Closed Principle, OCP)核心设计思想:对扩展开放,对修改关闭。含义:抽象可变功能,可变功能通过子类扩展实现,避免对已有抽象实现的修改。优点:便于扩展;1.2单一职责(Simpl...原创 2019-12-12 21:46:52 · 2184 阅读 · 0 评论 -
【设计模式】Netty中的设计模式
1 建造者模式&原型模式应用场景:ServerBootstrap包含多个复杂子对象需要构建,对外仅暴露一个无参构造函数,通过多个建造函数去丰富对象。同时提供私有带参构造函数来构建复制对象,仅应用于clone方法中。public class ServerBootstrap extends AbstractBootstrap<ServerBootstrap, ServerC...原创 2019-02-25 21:01:11 · 1297 阅读 · 0 评论 -
【设计模式】五、UML建模:行为型模式
12责任链模式UML类图引用:13命令模式UML类图引用:14解释器模式UML类图引用:15迭代器模式UML类图引用:16中介者模式UML类图引用:17备忘录模式记录对象信息方法。工具类图:UML类图引用:18观察者模式UML类图引用:19状态模式UML类图引用:20...原创 2018-08-28 15:00:10 · 1447 阅读 · 0 评论 -
【设计模式】四、UML建模:创建型模式,结构型模式
1 单例模式懒汉,饿汉 懒汉+线程安全+内部类 2工厂模式抽象工厂+工厂方法UML类图引用:3建造者模式备注:MilkTea即充当了产品对象,也充当了建造者本身(违反了单一责任原则),建造方法addItem();MilkTeaBuilder则是对各类复杂对象构造过程进行的封装。UML类图引用:4原型模式UML类图引用:5适配...原创 2018-08-28 10:53:43 · 1102 阅读 · 0 评论 -
【设计模式】 三、行为型模式:责任链,命令,解释器,迭代器,中介,备忘录,观察者,状态,策略,模板方法,访问者
12责任链模式定义:使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。package com.simple.gof.responsibility;/** * 责任链处理器 * * @author chaozai * @date 2018年8月21日 * */public abs...原创 2018-08-23 21:49:10 · 451 阅读 · 0 评论 -
【设计模式】二、结构型模式:适配器,桥接,树组,装饰,门面,享元,代理
5适配器模式定义:将一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法使用的类能够通过适配而被使用。package com.simple.gof.adapter;/** * 通过组合被适配对象并实现目标对象接口,来实现适配功能 * * @author chaozai * @date 2018年8月21日 * */public class Adap...原创 2018-08-23 21:49:01 · 515 阅读 · 0 评论 -
【设计模式】一、创建型模式:单例,工厂,建造者,原型
1 单例模式定义:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例1.1饿汉+线程安全package com.simple.gof.singleton;/** * 饿汉式线程安全 * </p> * 优点:没有加锁,执行效率会提高。 * </p> * 缺点:类加载时就初始化,浪费内存。 * </p> * * @a...原创 2018-08-23 21:48:50 · 392 阅读 · 0 评论