设计模式
不埋雷的探长
深耕BigData技术,专注于大数据技术领域的知识分享。CSDN认证博客专家,目前就职于腾讯,内推可私聊~ 热爱软件,喜欢编程的阳光小伙子~ 千万千万不要放弃学习,千万千万要搞好人际关际,共勉~
展开
-
设计模式 —— 深度技术博客链接
设计模式 —— 概述 及 七大设计原则【含示例&小总结】 设计模式 —— UML 类图 设计模式之 —— 单例模式 设计模式之 —— 策略模式 设计模式 —— 工厂模式(简单工厂、工厂方法、抽象工厂) 设计模式 —— 装饰者模式 设计模式 —— 代理模式 设计模式 —— 观察者模式 文章最后,给大家推荐一些受欢迎的技术博客链接:JAVA相关的深度技术博客链接 Flinak 相关技术博客链接...原创 2020-09-05 12:09:01 · 921 阅读 · 1 评论 -
设计模式 —— 观察者模式
目录一、观察者模式项目需求1.1 天气预报设计方案1-普通方案1.2 普通方案问题分析二、观察者模式原理2.1 观察者模式解决天气预报需求2.2观察者模式的好处三、观察者模式在Jdk应用的源码分析一、观察者模式项目需求天气预报项目需求,具体要求如下:气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去(比如发布到自己的网站或第三方) 需要设计开放型API,便于其他第三方也能接入气象站获取数据 提供温度、气压和湿度的接口 测量数据更新时...原创 2020-09-05 11:32:22 · 513 阅读 · 3 评论 -
设计模式 —— 代理模式
一、代理模式的基本介绍代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。 被代理的对象可以是远程对象、创建开销大的对象或需要安全控制的对象 代理模式有不同的形式,主要有三种静态代理、动态代理(JDK代理、接口代理)和Cglib代理(可以在内存动态的创建对象,而不需要实现接口,他是属于动态代理的范畴)。...原创 2020-09-03 23:51:25 · 446 阅读 · 0 评论 -
设计模式 —— 装饰者模式
目录一、星巴克咖啡订单项目需求二、方案1-解决星巴克咖啡订单项目(较差)三、方案2-解决星巴克咖啡订单(好点)四、装饰者模式定义4.1 装饰者模式原理4.2 装饰者模式解决星巴克咖啡订单五、装饰者模式在 JDK 应用的源码分析装饰者模式定义:动态给一个对象添加一些额外的职责,就像在墙上刷油漆,使用Decorator 模式相比用生成子类方式达到功能的扩充显得更为灵活。初计初衷:通常可以使用继承来实现功能的扩展,如果这些需要扩展的功能的种类很繁多,那么势必...原创 2020-09-02 12:02:20 · 6355 阅读 · 2 评论 -
设计模式 —— 工厂模式(简单工厂、工厂方法、抽象工厂)
一、简单工厂模式看一个披萨的项目:要便于披萨种类的扩展,要便于维护披萨的种类很多(比如GreekPizz、CheesePizz等) 披萨的制作有prepare,bake,cut, box 完成披萨店订购功能。1.1 使用传统的方式来完成思路分析(类图)编写OrderPizza.java去订购需要的各种Pizza,传统方式代码如下:public class OrderPizza { // 构造器 public OrderPi...原创 2020-08-31 10:16:46 · 693 阅读 · 1 评论 -
设计模式 —— UML 类图
一、UML基本介绍UML——UnifiedmodelinglanguageUML(统一建模语言),是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果UML本身是一套符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间的关系,比如类、接口、实现、泛化、依赖、组合、聚合等使用UML来建模,常用的工具有Rational Rose, 也可以使用一些插件来建模二、UML图...原创 2020-08-30 23:26:13 · 635 阅读 · 2 评论 -
设计模式 —— 概述 及 七大设计原则【含示例&小总结】
一、设计模式的重要性软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。这个术语是由 埃里希.伽玛(Erich Gamma)等人在1990年代从建筑设计领域引入到计算机科学的 大厦 VS 简易房 拿实际工作经历来说,当一个项目开发完后,如果客户提出新增功能,怎么办?(可扩展性,使用设计模式,软件具有很好的扩展性) 如果项目开发完后,原来程序员离职,你接手维护项目怎么办?(维护性 [可读性、规范性]) 目前程序员门槛越来越高,一线IT原创 2020-08-30 10:34:45 · 983 阅读 · 0 评论 -
设计模式 —— 策略模式
一、策略模式定义策略模式定义了一系列的方法,并将每个方法封装起来,使每个方法可以相互替代,使用方法本身和使用方法的客户端分割开来,相互独立二、深入浅出拨开策略模式这么介绍可能很抽象,还是较难理解策略模式。下面我们将从实际代码一层层拨开策略模式的知识。1、普通整型排序定义一个对 整型 int 排序的类及排序方法(为了好理解,以选择排序为例);应用T01_Main中 main 方法对其调用排序。a) 下面是对 整型 int 排序的类及排序方法public class T01..原创 2020-08-28 10:16:49 · 490 阅读 · 0 评论 -
设计模式 —— 单例模式
目录一、什么是单例设计模式?二、单例设计模式实现形式1、饿汉式实现方式一(推荐)2、饿汉式实现方式一3、懒汉式实现方式一(线程不安全)4、懒汉式实现方式二(线程安全,但效率低)5、懒汉实现方式三(线程不安全)6、懒汉实现方式四 - DCL 双端检查 + volatile(线程安全)7、静态内部类方式,JVM 保证单例(推荐)8、通过枚举实现单例模式(不推荐)一、什么是单例设计模式?单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的.原创 2020-08-27 21:38:40 · 593 阅读 · 1 评论