Android 设计模式
程序邦
1. 擅长Android 开发
2. 擅长React Native 跨平台开发
展开
-
HeadFirst设计模式学习--策略模式(Strategy Pattern)
设计模式学习--策略模式(Strategy Pattern) 什么是策略模式? 定义算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立使用算法的客户。 怎么使用策略模式设计程序? 分开变化和不会变化的部分,建立一组新的类来代表变化的部分。 三个设计原则: 1. 找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 2. 针对接口编原创 2015-09-25 11:15:15 · 465 阅读 · 0 评论 -
Android 设计模式实战笔记 享元模式
定义: 享元模式是对象池的一种实现,用来尽可能减少内存使用量, 使用共享对象存在大量的相似对象 使用使用场景: 1.系统中存在大量的相似对象 2.细微粒的对象都具备较接近的外部状态,而且内部状态与环境无关,也就是说对象没有特定状态 3.需要缓冲池的场景 实战 创建一个接口展示车票新的的函数 public interface Ticket {原创 2016-11-18 15:06:31 · 322 阅读 · 0 评论 -
Android 设计模式实战笔记 策略模式
定义: 定义了一系列的算法,并将每一个算法封装起来,而且使他们还可以互相替换,策略模式让算法独立使用它的客户而独立变化 使用使用场景: 1.针对同一类型问题的多种处理方式,仅仅是具体行为有差别时 2.需要安全地封装多种同一类型的操作 3.出现同一抽象类有多个子类,而又需要使用if else或者switch-case来选择具体子类时 实战 问题:ImageLoader的原创 2016-11-14 17:23:53 · 331 阅读 · 0 评论 -
Android 设计模式实战笔记 代理模式
定义: 为其他对象提供一种代理以控制对这个对象的访问 使用使用场景: 1.当无法或不想直接访问某个对象或者访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口 实战 不同API发送通知为例来说明代理模式 64dpHeight、256dp Height和headsUpContentView 定原创 2016-11-17 16:58:10 · 440 阅读 · 0 评论 -
Android 设计模式实战笔记 工厂方法模式
定义: 定义一个用于创建对象的接口,让子类决定实例化哪个类 使用使用场景: 在任何需要生成复杂对象的地方,都可以使用工厂方法模式,复杂对象适合使用工厂模式,用new就可以完成创建的对象无需使用工厂模式。 实战 式。数据存储为例,Android数据持有化有很多种方式,SharePrefence和SQlite,但是都是增删改查,把共同 的方法抽象出来。 publ原创 2016-11-14 15:33:56 · 356 阅读 · 0 评论 -
Android 设计模式实战笔记 原型模式
定义: 用原型模式指定创建对象的种类,并通过拷贝这些原型创建新的对象 使用使用场景: 1.类初始化需要消化非常多的资源,如数据,硬件资源,通过原型拷贝避免这些消耗 2.通过new产生一个对象需要非常繁琐的数据准备,这时可以使用原型模式,用原型模式拷贝多个对象供调用者使用,暨保护性拷贝。 3.一个对象需要提供给其他对象访问,而且各个调用者可能都需要修改其值时, 实原创 2016-11-14 15:02:31 · 243 阅读 · 0 评论 -
Android 设计模式实战 单例模式
定义: 确保某一个类只有一个实例,并且自行实例化并向整个系统提供这个实例 使用使用场景: 确保某个类有且只有一个对象的场景,避免产生多个对象消耗过多的资源,例如,创建一个对象需要消耗的资源过多,如要访问IO和数据库等资源,这时使用单例模式 实战 DCL doubule check lock private volatile static ImageLoader ins原创 2016-11-14 14:42:14 · 316 阅读 · 0 评论 -
Android 设计模式实战 Builder模式
定义: 将一个负责对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示 使用使用场景: 1.相同的方法,不同的执行顺序,产品不同的结果 2.当初始化一个对象特别复杂,如参数多,且很多参数都具有默认值 实战 public final class ImageLoaderConfiguration { final DiskCachediskCache; privat原创 2016-11-14 14:36:00 · 307 阅读 · 0 评论 -
Android 设计模式实战笔记 状态模式
定义: 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 使用使用场景: 1.一个对象的行为取决于它的状态,并且它的状态必须在运行时根据状态改变它的行为 2.代码中包含大量与对象状态有关的条件语句,例如,一个操作中含有庞大的多分支语句 if -else且这些分支依赖该对象的状态 实战 用户登录系统 取在普通的应用中,一个转发按钮,判断原创 2016-11-16 14:36:21 · 390 阅读 · 0 评论 -
《Head First 设计模式学习记录-终篇亦非终篇》
《Head First 设计模式学习记录-终篇亦非终篇》 2013年8月5日设计模式学习总结 前言: 设计模式断断续续也算是学了几个月了,让问我学得怎样,我还真不好说,我算是把这本书从头看到尾,然后每一章都有发表博客记录,代码也是一行一行敲出来的。在开始本篇博客之前,我想我应该谢谢书评才对,这次也算是有系统的去学习设计模式了,也算是完成了一项任务,但这个任务完成得并不太理想,转载 2015-09-25 10:52:25 · 415 阅读 · 0 评论 -
Android 设计模式实战笔记 外观模式(统一编程接口)
定义: 要求子系统的外部与其内部的通信必须通过一个统一的对象进行, 使用使用场景: 1.为一个复杂子系统一共一个简单接口,对象隐藏子系统的具体实现,隔离变化 实战 电话接口 public interface Phone { public void dail(); public void hangup(); } 电话实现类 public c原创 2016-11-18 15:25:51 · 330 阅读 · 0 评论