设计模式
pad长世界第一
这个作者很懒,什么都没留下…
展开
-
常用设计模式整理及分析(其五 适配器模式)
常用设计模式整理及分析(其五 适配器模式) 定义: 将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。 优点: 1、可以让任何两个没有关联的类一起运行。 2、提高了类的复用。 3、灵活性好。 缺点: 过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如,明明看到调用的是 A 接口,其实内部被适配成了 B 接口的实现,一个系统如果太多出现这种情况,无异于一场灾难。 Spring Aop适配器+代理模式案例 创建打卡接口及实现类 public inter原创 2020-11-12 02:32:09 · 69 阅读 · 0 评论 -
设计原则名称 设计原则简介 重要性
、设计原则名称 设计原则简介 重要性 单一职责原则(Single Responsibility Principle, SRP) 类的职责要单一,不能将太多的职责放在一个类中。该原则是实现高 内聚、低耦合的指导方针 ★★★★☆ 开闭原则(OpenClosed Principle, OCP) 一个软件实体应当对扩展开放,对修改关闭。即在不修改源代码的情 况下改变对象的行为。 ★★★★★ 里氏代换原则(Liskov Substitution Principle, LSP) 在软件系统中,一个可以接受基类(父类)对原创 2020-11-08 16:15:56 · 209 阅读 · 0 评论 -
常用设计模式整理及分析(其四 工厂设计模式)
常用设计模式整理及分析(其四 工厂设计模式) 定义: 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种 创建对象的最佳方式。它负责实现创建所有实例的内部逻辑。工厂类的创建产品类的方法可以被外界直接调用,创建所需的 产品对象。 创建产品接口以及两个实现类都继承该接口 public interface Product { void show(); } public class Phone implements Produ原创 2020-11-12 02:09:14 · 132 阅读 · 1 评论 -
常用设计模式整理及分析(其三 代理模式)
常用设计模式整理及分析(其三 代理模式) 定义:给某对象提供一个代理对象,通过代理对象可以访问该对象的功能。主要解决通过代理去访问[不能直接访问的对象],例如 租房中介,你可以直接通过中介去了解房东的房源信息,此时中介就可以称为代理。 优点: 1、职责清晰。 2、高扩展性。 3、智能化。 缺点: 1、由于在客户端和真实主题之间增加了代理对象,因此有些类型的代理模式可能会造成请求的处理速度变慢。 2、实现代理模式需要额外的工作,有些代理模式的实现非常复杂。 实现方式: 1.基于接口的动态代理 提供者:J原创 2020-11-12 01:58:22 · 59 阅读 · 0 评论 -
常用设计模式整理及分析(其二 观察者模式)
常用设计模式整理及分析(其二 观察者模式) 定义: 对象之间存在一对多或者一对一依赖,当一个对象改变状态,依赖它的对象会收到通知并自动更新。 MQ其实就属于一种观察者模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。 优点: 1、观察者和被观察者是抽象耦合的。 2、建立一套触发机制。 缺点: 1、如果一个被观察者对象有很多的直接和间接的观察者的话,将所有的观察者都通知到会花费很多时间。 2、如果在观察者和观察目标之间有循环依赖的话,观察目标会触发它们之间进行循环调用,可能导致系原创 2020-11-12 01:06:30 · 825 阅读 · 1 评论 -
常用设计模式整理及分析(其一 单例模式)
常用设计模式整理及分析(其一 单例模式) 1.单例模式 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 适用的场景 1、网站的计数器 2、应用程序的日志应用 3、数据库连接池设计 4、多线程的线程池设计 饿汉式 在类加载时就完成了初始化,所以类加载比较慢,但获取对象的速度快。 在这里不展开描述。 懒汉式 1、延迟加载创建,也就是用到对象的时候,才会创建 2、线程安全问题需要手动处理(不添加同步方法,线程不安全,添加了同步方法,效率低) 3、实现原创 2020-11-12 00:37:37 · 75 阅读 · 1 评论