小米架构师推荐 Android源码设计模式解析与实战

Andriod 同时被 2 个专栏收录
5 篇文章 0 订阅
169 篇文章 1 订阅

推荐序

设计模式本身并不复杂,但是设计模式的出现,却是GOF大师们耗费无数心血,研究成百上千的例子,历经千锤百炼取其精华而得之,所以,它的重要性毋庸置疑。几年前,我曾见过高焕堂老师一本类似书籍的原稿,可惜此书未能出版,心中一直对此遗憾。 但今天有幸一窥CSDN社区专家何红辉、关爱民老师精心撰写的这本以Android源码为案例的设计模式解析与实战一书时, 激动之情勃然而发。是的,本书的确是国内第一本以Android为平台介绍设计模式的书,并且书中实例还不是简单的Sample,而是作者在自已开发实践中的经历和-些实际使用的精彩代码段, 实用性很强。

另外,我觉得(Android 源码设计模式解析与实战》中的主人公小民就是那些不断追求技术进
步,从而得以不断成长的IT技术人的代表,小民的成长过程基本上反映了我们现在程序员的成长
经历,他的成功很值得我们学习和借鉴。

学习设计模式,是程序员自我修炼、提升实力过程中必不可少的一关。读完此书的您或许已是
设计模式的熟手,但我个人觉得,程序员的自我修炼远未结束,因为在设计模式之后,更有像Patterm Oriented Software Architecture 5卷本这样的、着眼于更高层次的书籍需要我们认真、刻苦地学习。

目录

第1章走向灵活软件之路——面向对象的六大原则

在这里插入图片描述

第2章 应用最广的模式——单 例模式

在这里插入图片描述

第3章 自由扩展你的项目——Builder模式

在这里插入图片描述

第4章 使程序运行更高效——原型模式

在这里插入图片描述

第5章 应用最广 泛的模式——工厂方法模式

在这里插入图片描述
在这里插入图片描述

第6章 创建型设计模式——抽象工厂模式.

在这里插入图片描述

第7章 时势造英雄——策略模式

在这里插入图片描述

第8章 随遇而安——状态模式

在这里插入图片描述在这里插入图片描述

第9章 使编程更有 灵活性——责任链模式

在这里插入图片描述

第10章 化繁为简的翻译机——解释器模式

在这里插入图片描述

第11章 让程序畅通执行——命令模式

在这里插入图片描述

第十二章 解决、解耦的钥匙——观察者模式

在这里插入图片描述
在这里插入图片描述

第13章 编程中的“后悔药”——备忘录模式

第14章 解决问题的“第三者”——迭代器模式

第15章 抓住问题核心——模板方法模式

第16章 访问者模式

第17章 “和事佬”——中介者模式

第18章 编程好帮手——代理模式

第19章 物以类聚——组合模式

在这里插入图片描述

第20章 得心应手的“粘合剂”——适配器模式

第21章 装饰模式

第22章 对象共享,避免创建多对象——享元模式

第23章 统一编程接口——外观模式

第24章 连接两地的交通枢钮——桥接模式

第25章 MVC的介绍与实战

第26章 MVP应用架构模式

在这里插入图片描述
文章得到了业界的认可,让我又想起了最初出书的念头。原因很简单,Android 是一个开源的系统,很多优秀的思想、架构、设计模式必然在它的源码中得以体现,而在开源社区发布的文章还不够深入。从学习"Hello World"开始,我们都是先从学习他人如何做,然后再到学着做,最后经过自己的理解与思考再到自己做,因此,学习这些优秀的实现正是我们每个开发人员成长过程中的重要一步。在学习Android源码的优秀设计之后,我们如何将设计模式运用在Android开发上成了至关重要的问题,正所谓学以致用。因此,设计模式在Android开发中的实战又成了第二个关键。恰好,这两个领域目前都没有相关的书籍,我和关爱民老师就考虑出版这样的一本书籍。一来是通过写书实现自我提升以及对知识的梳理,二来也希望本书能够让更多的Android开发人员了解设计模式,从而提高自己的代码质量。如此一来, 也算是尽了我们的绵薄之力。

获取该文档的方式:点击到我的主页,加入粉丝裙获取。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

第1章 走向灵活软件之路——面向对象的六大原则1 1.1 优化代码的第一步——单一职责原则1 1.2 让程序更稳定、更灵活——开闭原则5 1.3 构建扩展性更好的系统——里氏替换原则12 1.4 让项目拥有变化的能力——依赖倒置原则13 1.5 系统有更高的灵活性——接口隔离原则16 1.6 更好的可扩展性——迪米特原则18 1.7 总结22 第2章 应用最广的模式——单例模式23 2.1 单例模式介绍23 2.2 单例模式的定义23 2.3 单例模式的使用场景23 2.4 单例模式UML类图23 2.5 单例模式的简单示例24 2.6 单例模式的其他实现方式26 2.6.1 懒汉模式26 2.6.2 Double CheckLock ( DCL )实现单例26 2.6.3 静态内部类单例模式27 2.6.4 枚举单例28 2.6.5 使用容器实现单例模式28 2.7 Android源码中的单例模式29 2.8 无名英雄——深入理解LayoutInflater33 2.9 运用单例模式40 2.10 总结42 第3章 自由扩展你的项目——Builder模式43 3.1 Builder模式介绍43 3.2 Builder模式的定义43 3.3 Builder模式的使用场景43 3.4 Builder模式的UML类图43 3.5 Builder模式的简单实现44 3.6 Android源码中的Builder模式实现46 3.7 深入了解WindowManager 52 3.8 Builder模式实战59 3.9 总结64 第4章 使程序运行更高效——原型模式66 4.1 原型模式介绍66 4.2 原型模式的定义66 4.3 原型模式的使用场景66 4.4 原型模式的UML类图66 4.5 原型模式的简单实现67 4.6 浅拷贝和深拷贝69 4.7 Android源码中的原型模式实现72 4.8 Intent的查找匹配74 4.8.1 App信息表的构建74 4.8.2 精确匹配80 4.9 原型模式实战83 4.10 总结85 第5章 应用最广泛的模式——工厂方法模式87 5.1 工厂方法模式介绍87 5.2 工厂方法模式的定义87 5.3 工厂方法模式的使用场景87 5.4 工厂方法模式的UML类图87 5.5 模式的简单实现90 5.6 Android源码中的工厂方法模式实现93 5.7 关于onCreate方法95 5.8 工厂方法模式实战102 5.9 总结105 第6章 创建型设计模式——抽象工厂模式106 6.1 抽象工厂模式介绍106 6.2 抽象工厂模式的定义106 6.3 抽象工厂模式的使用场景106 6.4 抽象工厂模式的UML类图106 6.5 抽象工厂方法模式的简单实现109 6.6 Android源码中的抽象工厂方法模式实现112 6.7 总结116 第7章 时势造英雄——策略模式117 7.1 策略模式介绍117 7.2 策略模式的定义117 7.3 策略模式的使用场景117 7.4 策略模式的UML类图118 7.5 策略模式的简单实现118 7.6 Android源码中的策略模式实现123 7.6.1 时间插值器123 7.6.2 动画中的时间插值器124 7.7 深入属性动画128 7.7.1 属性动画体系的总体设计128 7.7.2 属性动画的核心类介绍128 7.7.3 基本使用129 7.7.4 流程图130 7.7.5 详细设计131 7.7.6 核心原理分析131 7.8 策略模式实战应用142 7.9 总结144 第8章 随遇而安——状态模式145 8.1 状态模式介绍145 8.2 状态模式的定义145 8.3 状态模式的使用场景145 8.4 状态模式的UML类图145 8.5 状态模式的简单示例146 8.6 Wi—Fi管理中的状态模式150 8.7 状态模式实战159 8.8 总结164 第9章 使编程更有灵活性——责任链模式165 9.1 责任链模式介绍165 9.2 责任链模式的定义165 9.3 责任链模式的使用场景165 9.4 责任链模式的UML类图165 9.5 责任链模式的简单实现170 9.6 Android源码中的责任链模式实现173 9.7 责任链模式实战178 9.8 总结181 第10章 化繁为简的翻译机——解释器模式182 10.1 解释器模式介绍182 10.2 解释器模式的定义182 10.3 解释器模式的使用场景183 10.4 解释器模
©️2021 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值