![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 90
Vinson武
Android开发程序猿
展开
-
结构型-适配器模式
定义:适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。适配器模式分为类结构型模式和对象结构型模式两种,前者类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。模式的应用场景以前开发的系统存在满足新系统功能需求的类,但其接口同新系统的接口不一致。使用第三方提供的组件,但组件接口定义和自己要求的接口定义不同。优点客户端通过适配器可以透明地调用目标接口。复用了现存的类,程序员不需要原创 2021-07-31 14:27:02 · 194 阅读 · 0 评论 -
设计模式的六大原则
一、单一职责原则—优化代码第一步定义就一个类而言,应该仅有一个引起它变化的原因。优点可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多;提高类的可读性,提高系统的可维护性;变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响。缺点一个职责的变化可能会削弱或者抑制这个类实现其他职责的能力;当客户端需要该对象的某一个职责时,不得不将其他不需要的职责全都包含进来,从而造成冗余代码或代码的浪费。实现需要设计原创 2021-07-01 17:08:18 · 200 阅读 · 0 评论 -
设计模式概述和UML图
设计模式概述分类设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。根据目的来分。根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式 3 种。创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF 中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。结构型模式:用于描述如何将类或对象按某种布局组成更大的结构,GoF 中提供了代理、适配器、桥接、装饰、外观、享元、组合等 7 种结构型模式。行为原创 2021-07-01 16:28:57 · 282 阅读 · 1 评论 -
设计模式学习-生成器模式(Builder).md
定义:一步一步创建一个复杂对象的创建模型,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。使用场景:相同的方法,不同的执行顺序,产生不同的结果时;多个部件或零件,都可以装配到一个对象中,但是产生的运行结果又不相同;产品类非常复杂,或者产品类中的调用顺序不用产生了不同的作用;当初始化一个对象特别复杂,如参数多,且很多参数都具有默认值。实例,参...原创 2020-05-02 15:57:20 · 141 阅读 · 0 评论 -
设计模式学习——设计原则与设计模式
设计原则和模式一、设计原则1、单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。换句话说,一个类的功能要单一,只做与它有关的事。(android的四大组件)2、开放封闭原则:一个软件实体应该对外扩展开放,对修改封闭。对扩展开放意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况;对修改封闭,意味着类一旦设计完成,就可以独立工作,而不要对类进行任何的修改。(1)开放封闭原...原创 2018-11-18 13:54:16 · 189 阅读 · 2 评论 -
设计模式学习——适配器模式
定义适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配无法在一起工作的两个类可以在一起工作。(得到一个能够兼容原有接口和目标接口的适配类)使用场景(1)系统需要使用现有的类,但此类的接口不符合系统的需要,即接口不兼容。(2)想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。(3)需要一个统一的输...原创 2018-11-18 16:49:53 · 111 阅读 · 0 评论 -
设计模式学习——观察者模式
观察者模式定义:定义对象间一种一对多的依赖关系,使得每当一个对象发生变化时,则所有依赖于他的对象都会得到通知并自动更新。使用场景关联行为场景事件多级触发场景跨系统的消息交换场景,如消息队列、事件总线的处理机制特点:实现对象的解耦,将观察者和被观察者完全隔离,只依赖于Observe和Observable抽象。UML简单实现例子抽象观察者类/** * ...原创 2018-11-18 15:52:50 · 138 阅读 · 0 评论 -
创建型-单例模式
单例模式(一种对象创建型模式)1.定义:保证一个类只有一个实例存在,同时提供能对该实例加以访问的全局访问方法。2.单例模式的要点:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。*使用场景:确保某个类只有一个对象,避免产生多个对象消费过多的资源。3.单例模式的版本:饿汉式:即当类加载进来时就立即实例化对象,但这种方式比较消耗计算机资源。p...原创 2018-11-18 15:16:54 · 130 阅读 · 0 评论 -
结构型-代理模式
模式介绍代理模式是对象的结构模式。代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。模式的使用场景就是一个人或者机构代表另一个人或者机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。角色介绍抽象对象角色AbstractObject:声明了目标对象和代理对象的共同接口,这样一来在任何可以使用目标对象的...原创 2018-11-18 18:10:18 · 127 阅读 · 1 评论