![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
不融化的雪人
编程爱好者
展开
-
浅析观察者模式
观察者模式 观察者模式又被称为发布——订阅模式,属于行为型设计模式的一种,是一个在项目中经常使用的模式。 定义:定义对象间一种一对多的依赖关系,每当一个对象改变状态时,则所有依赖于他的对象都会得到通知并被自动更新。 四个角色 1.Subject 抽象主题,(抽象被观察者),抽象主题角色把所有观察者对象保存在一个集合里,每个主题都可以有任意数量的观察者,抽象主题提供一个接口,可...原创 2018-07-24 20:43:40 · 243 阅读 · 0 评论 -
设计模式之单例模式+LayoutInflater分析
单例模式 单例模式是应用最广的模式之一,在应用这个模式时,单例对象的类必须保证只有一个实例存在,许多时候整个系统只需要拥有一个全局变量,这样有利于我们协调系统整体的行为 定义:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例 使用场景:当创建一个对象需要消耗的资源太多的时候,如要访问IO和数据库等资源的时候,就可以考虑使用单例模式 UML类图 角色介绍 Client:高层客...原创 2018-08-09 21:53:39 · 387 阅读 · 0 评论 -
设计模式--Builder模式
Builder模式 模式介绍 Builder模式是一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下可以更精确的控制对象的构造流程 该模式是为了将构建复杂对象的过程和他的部件解耦,使得构建过程和部件的表示隔离开来。 因为一个对象可能有很多个组成部分,比如说汽车有车轮,方向盘,发动机,还有各种小零件等,如何将这些部件组装成一辆汽车,这个过程是相当漫长的,对于这种情...原创 2018-08-10 21:58:39 · 339 阅读 · 0 评论 -
面向对象的六大原则(一)
单一职责原则 读《Android源码设计模式》 单一职责的定义为:就一个类而言,应该仅有一个引起它变化的原因,简单来说,一个类中应该是一组相关性很高的函数,数据的封装 我们从最入门的方式入手 入手 假设现在要实现图片加载的功能,并且能将图片缓存,我们可能写出的代码是这样的 public class ImageLoader { //图片缓存 LruCach...原创 2018-08-07 19:39:41 · 482 阅读 · 0 评论 -
设计模式之原型模式
原型模式 介绍 原型模式是一个创建型模式。原型二字表明了该模式应该有一个样板实例,用户从这个样板对象中复制出一个内部属性一致的对象,这个过程也就是我们俗称的克隆,被复制的实例就是我们所称的原型,这个原型是可定制的,原型模式多用于创建复杂的或者构造耗时的实例,因为这种情况下,复制一个已经存在的实例可使程序运行更高效 定义 用原型实例指定创建对象的种类,并通过复制这些原型创建新的...原创 2018-08-15 12:33:24 · 560 阅读 · 0 评论 -
面向对象的六大原则(二)
面向对象的六大原则(二) 昨天看书学习了六大原则的前两个,单一职责原则和开闭原则,假若不太了解的同僚可以去这里参观一下 今天我们接着往下看,先来瞧瞧里氏替换原则 里氏替换原则 定义:如果对每一个类型为S的对象O1,都有类型为T的对象O2,使得以T定义的所有程序P在所有的对象O1都替换成O2时,程序P的行为没有发生变化,那么类型S就是类型T的子类型; 阿西吧,定义太冠冕堂皇了,用白话...原创 2018-08-08 20:22:58 · 136 阅读 · 0 评论 -
设计模式---工厂方法模式
工厂方法模式 模式介绍 工厂方法模式是创建性设计模式之一。它是一种结构简单的模式,在我们平时开发中应用很广泛,也许你并不知道,但是你已经使用了无数次该模式了,如Android中的Activity里的各个生命周期方法,以onCreate方法为例,他就可以看做一个工厂方法,我们在其中可以构造我们的VIew,并通过setContentView返回给FrameWork处理等 定义 定义一个用...原创 2018-08-16 09:38:50 · 161 阅读 · 0 评论 -
设计模式之抽象工厂模式
抽象工厂模式 模式介绍 创建性模式之一,抽象工厂模式起源于以前对不同操作系统的图形化解决方案,如不同的操作系统中的按钮和文本框控件其实现是不同的,对于每一个操作系统,其本身就构成一个产品类,而按钮与文本框控件也构成一个产品类,两种产品类两种变化,各有各自的特点 模式定义 为创建一组相关或者是相互依赖的对象提供一个接口,而不需要指定他们的具体类 使用场景 一个对象家族中有相...原创 2018-09-05 20:41:36 · 175 阅读 · 0 评论