![](https://img-blog.csdnimg.cn/20201216101401979.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
文章平均质量分 85
主要讲解反射机制和单例的五种创建方式、工厂模式、建造者模式、适配器、模式、外观模式、策略模式、原型模式等。
杨林伟
像火箭科学家一样思考!
展开
-
开发者必知的18种设计模式(图文)
18种设计模式原创 2023-11-22 10:56:02 · 358 阅读 · 0 评论 -
设计模式系列教程(完) - 终章总结
《设计模式系列教程》至此正式讲解完毕,本文来总结一下之前的教程知识点内容,课程系列内容如下:设计模式系列教程(01) - 反射机制(一)设计模式系列教程(02) - 反射机制(二)设计模式系列教程(03) - 设计模式分类及六大原则设计模式系列教程(04) - 单例模式设计模式系列教程(05) - 工厂模式设计模式系列教程(06) - 代理模式设计模式系列教程(07) - 建造者模...原创 2019-10-29 16:42:03 · 481 阅读 · 0 评论 -
设计模式系列教程(14) - 观察者模式
1. 什么是观察者模式观察者模式(Observer),是一种行为性模型,行为型模式关注的是系统中对象之间的相互交互,解决系统在运行时对象之间的相互通信和协作,进一步明确对象的职责。相比来说,创建型模式关注对象的创建过程,结构型模式关注对象和类的组合关系。2. 模式的职责观察者模式主要用于1对N的通知。当一个对象的状态变化时,他需要及时告知一系列对象,令他们做出相应。实现有两种方式:推...原创 2019-10-29 16:27:47 · 417 阅读 · 0 评论 -
设计模式系列教程(13) - 策略模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。2. 策略模式应用场景策略模式的用意是针对一组算法或逻辑,将每一个算法或逻辑封装到具有共同接口的独立的类中,从而使...原创 2019-10-29 16:08:18 · 453 阅读 · 0 评论 -
设计模式系列教程(12) - 装饰模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是装饰模式装饰器模式,也成为包装模式,顾名思义,就是对已经存在的某些类进行装饰,以此来扩展一些功能。其结构图如下:1.Component为统一接口,也是装饰类和被装饰类的基本类型。2.ConcreteComponent为具体实现类,也是...原创 2019-10-29 15:38:00 · 399 阅读 · 0 评论 -
设计模式系列教程(11) - 原型模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是原型模式原型模式 是一个创建型的模式。原型二字表明了改模式应该有一个样板实例,用户从这个样板对象中复制一个内部属性一致的对象,这个过程也就是我们称的“克隆”。被复制的实例就是我们所称的“原型”,这个原型是可定制的。原型模式多用于创建复杂的或...原创 2019-10-29 15:20:28 · 410 阅读 · 0 评论 -
设计模式系列教程(10) - 外观模式(门面模式)
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode外观模式(Facade Pattern)门面模式,隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。这种模式涉及到一个单一的类,该类提供了客户端请求的简化...原创 2019-10-29 13:58:13 · 432 阅读 · 0 评论 -
设计模式系列教程(09) - 适配器模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是适配器在设计模式中,适配器模式(英语:adapter pattern)有时候也称包装样式或者包装(wrapper)。将一个类的接口转接成用户所期待的。一个适配使得因接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存...原创 2019-10-29 11:45:20 · 472 阅读 · 0 评论 -
设计模式系列教程(08) - 模板方法
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是模板方法模板方法模式:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的。 重复代码全部在父类里面,不同业务的,抽取给子类进行实现。抽取过程—抽象方法。某些特定步骤。核心 :处理...原创 2019-10-29 11:11:25 · 440 阅读 · 0 评论 -
设计模式系列教程(07) - 建造者模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1.什么是建造者模式?建造者模式 是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性...原创 2019-10-29 10:40:04 · 434 阅读 · 0 评论 -
设计模式系列教程(06) - 代理模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是代理模式?通过代理控制对象的访问,可以详细访问某个对象的方法,在这个方法调用处理,或调用后处理。既(AOP微实现) ,AOP核心技术面向切面编程。2. 代理模式应用场景SpringAOP事务原理日志打印权限控制远程调用安...原创 2019-10-29 09:57:29 · 478 阅读 · 0 评论 -
设计模式系列教程(05) - 工厂模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是工厂模式实现了创建者和调用者分离,工厂模式分为简单工厂、工厂方法、抽象工厂模式2. 工厂模式好处工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。利用工厂模式可以降低程序的耦合性,为后期的维护修改提...原创 2019-10-28 18:15:16 · 460 阅读 · 0 评论 -
设计模式系列教程(04) - 单例模式
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode1. 什么是单例保证一个类只有一个实例,并且提供一个访问该全局访问点2.单例应用场景Windows的Task Manager(任务管理器)就是很典型的单例模式(这个很熟悉吧),想想看,是不是呢,你能打开两个windows task manage...原创 2019-10-28 17:08:37 · 552 阅读 · 0 评论 -
设计模式系列教程(03) - 设计模式分类及六大原则
1. 设计模式分类【创建型模式】共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。【结构型模式】共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。【行为型模式】共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。2. 设计模式的六大原则2.1 开闭原则(...原创 2019-10-28 16:20:02 · 417 阅读 · 0 评论 -
设计模式系列教程(02) - 反射机制(二)
代码已上传至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/Java-DesignMode引言使用过JDBC来连接数据库的同学知道连接数据库时,会有一段Class.forName的代码,会提出很多疑问,比如:为什么没有返回值?为什么要必须加上这一段代码?不加这段代码会怎么样?下面来看看这一段代码是怎么写的:// 1.加载...原创 2019-10-28 15:48:28 · 565 阅读 · 0 评论 -
设计模式系列教程(01) - 反射机制(一)
1. 什么是Java反射机制就是正在运行,动态获取这个类的所有信息。2. 反射机制的作用反编译:.class–>.java通过反射机制访问java对象的属性,方法,构造方法等3. 反射机制的应用场景Jdbc 加载驱动Spring IOC框架4. 反射机制获取类的三种方式第一种方式:使用Class.forName的方式Class class1 ...原创 2019-10-28 14:41:49 · 680 阅读 · 0 评论