文档索引页
Introduction
前言
设计模式面试题
设计模式概述
何时会用到设计模式
授课方式
七大设计原则
七大原则概述
单一职责原则
接口隔离原则
依赖倒转原则
里氏替换原则
OCP开闭原则
迪米特法则
合成复用原则
工具
UML相关
类的依赖泛化_依赖关系
设计模式扩展
单例模式
饿汉_静态常量
饿汉_静态代码块儿
线程不安全_懒汉式
线程安全_懒汉式
同步代码块_懒汉式
双重检查
静态内部类
枚举
JDK源码
小结
工厂模式
简单工厂模式
工厂方法模式
抽象工厂模式
JDK源码分析
原型模式
克隆羊
Spring源码分析
浅拷贝
深拷贝
建造者模式
盖房子
4个角色
代码演示
StringBuilder源码
内容梳理
适配器模式
工作原理
类适配器
对象适配器
接口适配器
源码应用
桥接模式
手机问题
源码剖析
注意事项
装饰者模式
起步
代码实战
JDK源码
组合模式
院校展示
JDK源码分析
注意事项
外观模式
影院管理
代码实战
源码分析
注意事项
享元模式
网站外包
工作原理
代码实战
源码分析
内容梳理
代理模式
基本介绍
静态代理
动态代理
Cglib代理
几种变体
模板模式
工作原理
豆浆制作
钩子方法
IOC源码
细节说明
命令模式
工作原理
遥控控器
JDBC源码
内容梳理
访问者模式
歌手评分
原理类图
代码实践
双分派
使用细节
迭代器模式
统一遍历
原理类图
代码实践
源码分析
使用细节
观察者模式
天气预报
工作原理
代码实践
源码分析
内容梳理
终结者模式
智能家庭
原理分析
代码实践
内容梳理
备忘录模式
游戏角色
工作原理
代码实践
追事项
解释器模式
计算求值
原理解析
代码实践
源码分析
注意事项
状态模式
先看原理
抽奖活动
借贷平台
注意事项
策略模式
鸭子问题
工作原理
代码实践
源码分析
内容梳理
职责链模式
采购审批
工作原理
代码实践
源码分析
内容梳理
课件
pdf
docx_export
java_design_pattern
第 1 章 内容介绍和授课方式
Java 设计模式内容介绍
课程亮点和授课方式
第 2 章 设计模式七大原则
设计模式的目的
设计模式七大原则
单一职责原则
接口隔离原则(Interface Segregation Principle)
依赖倒转原则
里氏替换原则
开闭原则
迪米特法则
合成复用原则(Composite Reuse Principle)
设计原则核心思想
第 3 章 UML 类图
UML 基本介绍
UML 图
UML 类图
类图—依赖关系(Dependence)
类图—泛化关系(generalization)
类图—实现关系(Implementation)
类图—关联关系(Association)
类图—聚合关系(Aggregation)
类图—组合关系(Composition)
第 4 章 设计模式概述
掌握设计模式的层次
设计模式介绍
设计模式类型
第 5 章 单例设计模式
单例设计模式介绍
单例设计模式八种方式
饿汉式(静态常量)
饿汉式(静态代码块)
懒汉式(线程不安全)
懒汉式(线程安全,同步方法)
懒汉式(线程安全,同步代码块)
双重检查
静态内部类
枚举
单例模式在 JDK 应用的源码分析
单例模式注意事项和细节说明
第 6 章 工厂模式
简单工厂模式
工厂方法模式
抽象工厂模式
工厂模式在 JDK-Calendar 应用的源码分析
工厂模式小结
第 7 章 原型模式
克隆羊问题
传统方式解决克隆羊问题
传统的方式的优缺点
原型模式-基本介绍
原型模式原理结构图-uml 类图
原型模式解决克隆羊问题的应用实例
原型模式在 Spring 框架中源码分析
深入讨论-浅拷贝和深拷贝
深拷贝应用实例
原型模式的注意事项和细节
第 8 章 建造者模式
盖房项目需求
传统方式解决盖房需求
传统方式的问题分析
建造者模式基本介绍
建造者模式的四个角色
建造者模式原理类图
建造者模式解决盖房需求应用实例
建造者模式在 JDK 的应用和源码分析
建造者模式的注意事项和细节
第 9 章 适配器设计模式
现实生活中的适配器例子
基本介绍
工作原理
类适配器模式
对象适配器模式
接口适配器模式
适配器模式在 SpringMVC 框架应用的源码剖析
适配器模式的注意事项和细节
第 10 章桥接模式
手机操作问题
传统方案解决手机操作问题
传统方案解决手机操作问题分析
桥接模式(Bridge)-基本介绍
桥接模式(Bridge)-原理类图
桥接模式解决手机操作问题
桥接模式在 JDBC 的源码剖析
桥接模式的注意事项和细节
常见的应用场景:
第 11 章装饰者设计模式
星巴克咖啡订单项目(咖啡馆):
方案 1-解决星巴克咖啡订单项目
方案 1-解决星巴克咖啡订单问题分析
方案 2-解决星巴克咖啡订单(好点)
方案 2-解决星巴克咖啡订单问题分析
装饰者模式定义
装饰者模式原理
装饰者模式解决星巴克咖啡订单
装饰者模式下的订单:2 份巧克力+一份牛奶的 LongBlack
装饰者模式咖啡订单项目应用实例
装饰者模式在 JDK 应用的源码分析
第 12 章组合模式
看一个学校院系展示需求
传统方案解决学校院系展示(类图)
传统方案解决学校院系展示存在的问题分析
组合模式基本介绍
组合模式原理类图
组合模式解决学校院系展示的 应用实例
组合模式在 JDK 集合的源码分析
组合模式的注意事项和细节
第 13 章外观模式
影院管理项目
传统方式解决影院管理
传统方式解决影院管理问题分析
外观模式基本介绍
外观模式原理类图
外观模式解决影院管理
外观模式在 MyBatis 框架应用的源码分析
外观模式的注意事项和细节
第 14 章享元模式
展示网站项目需求
传统方案解决网站展现项目
传统方案解决网站展现项目-问题分析
享元模式基本介绍
享元模式的原理类图
内部状态和外部状态
享元模式解决网站展现项目
享元模式在 JDK-Interger 的应用源码分析
享元模式的注意事项和细节
第 15 章代理模式
代理模式(Proxy)
静态代理
动态代理
Cglib 代理
几种常见的代理模式介绍— 几种变体
第 16 章模板方法模式
豆浆制作问题
模板方法模式基本介绍
模板方法模式原理类图
模板方法模式解决豆浆制作问题
模板方法模式的钩子方法
模板方法模式在 Spring 框架应用的源码分析
模板方法模式的注意事项和细节
第 17 章命令模式
智能生活项目需求
命令模式基本介绍
命令模式的原理类图
命令模式解决智能生活项目
命令模式在 Spring 框架 JdbcTemplate 应用的源码分析
命令模式的注意事项和细节
第 18 章访问者模式
测评系统的需求
传统方式的问题分析
访问者模式基本介绍
访问者模式的原理类图
访问者模式应用实例
访问者模式的注意事项和细节
第 19 章迭代器模式
看一个具体的需求
传统的设计方案(类图)
传统的方式的问题分析
迭代器模式基本介绍
迭代器模式的原理类图
迭代器模式应用实例
迭代器模式在 JDK-ArrayList 集合应用的源码分析
迭代器模式的注意事项和细节
第 20 章观察者模式
天气预报项目需求,具体要求如下:
天气预报设计方案 1-普通方案
观察者模式原理
观察者模式解决天气预报需求
观察者模式在 Jdk 应用的源码分析
第 21 章中介者模式
智能家庭项目
传统方案解决智能家庭管理问题
传统的方式的问题分析
中介者模式基本介绍
中介者模式的原理类图
中介者模式应用实例-智能家庭管理
中介者模式的注意事项和细节
第 22 章备忘录模式
游戏角色状态恢复问题
传统方案解决游戏角色恢复
传统的方式的问题分析
备忘录模式基本介绍
备忘录模式的原理类图
游戏角色恢复状态实例
备忘录模式的注意事项和细节
第 23 章解释器模式
四则运算问题
传统方案解决四则运算问题分析
解释器模式基本介绍
解释器模式的原理类图
解释器模式来实现四则
解释器模式在 Spring 框架应用的源码剖析
解释器模式的注意事项和细节
第 24 章状态模式
APP 抽奖活动问题
状态模式基本介绍
状态模式的原理类图
状态模式解决 APP 抽奖问
状态模式在实际项目-借贷平台 源码剖析
状态模式的注意事项和细节
第 25 章策略模式
编写鸭子项目,具体要求如下:
传统方案解决鸭子问题的分析和代码实现
传统的方式实现的问题分析和解决方案
策略模式基本介绍
策略模式的原理类图
策略模式解决鸭子问题
策略模式在 JDK-Arrays 应用的源码分析
策略模式的注意事项和细节
第 26 章职责链模式
学校 OA 系统的采购审批项目:需求是
传统方案解决 OA 系统审批,传统的设计方案(类图)
传统方案解决 OA 系统审批问题分析
职责链模式基本介绍
职责链模式的原理类图
职责链模式解决 OA 系统采购审批
职责链模式在 SpringMVC 框架应用的源码分析
职责链模式的注意事项和细节
本书使用 GitBook 发布
注意事项
组合模式的注意事项和细节
组合模式的注意事项和细节
简化客户端操作.客户端只需要面对一致的对象而不用考虑整体部分或者节点叶子的问题
具有较强的扩展性.当我们要更改组合对象的时候,我们只需要调整内部的层次关系,客户端不用做出任何改动
方便创建出复杂的层次结构.客户端不用理会组合里面的组成细节,容易添加节点后者叶子从而创建出复杂的树形结构
需要遍历组织机构,或者处理的对象具有树形结构时,非常适合使用组合模式.
要求较高的抽象性,
如果节点和叶子有很多差异性的话,
比如很多都不一样,不适合使用组合模式
一句话: 这个类之间的模式,有点儿像这个二叉树的数据结构
results matching "
"
No results matching "
"