Android书籍读书笔记
禽兽先生不禽兽
喜欢做一些技术性的工作,愿意虚心向别人请教,走在自己的技术开发之路上,让自己每天都有进步,才会让自己具备更大的价值
展开
-
《Android 开发艺术探索》读书笔记(十)——Android 的消息机制
Handler 是 Android 消息机制的上层接口,所以我们在开发过程中只需要与 Handler 交互即可。Handler 的使用过程很简单,通过 Handler 可以将一个任务轻松地切换到 Handler 所在的线程中去执行。Handler 最常用的一个使用场景就是在子线程中执行耗时操作,然后通过 Handler 发送消息切换到主线程中更新 UI。Android 的消息机制主要是指 Ha...原创 2019-02-13 14:31:09 · 216 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十五)——模板方法模式
在我们的开发过程中,对于某些操作流程的步骤可能是一样的,但是步骤的具体实现却会有所变化,所以将这些固定步骤抽取成一个模板,再修改不同的实现就是模板方法模式。第十五章 抓住问题核心——模板方法模式1.定义:定义一个操作中的算法的框架,而将一些步骤延迟到子类中去,使子类不可改变算法的结构,但可以重定义该算法的某些特定步骤。2.使用场景:1).多个子类有公有的方法,并原创 2017-05-23 17:07:48 · 524 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十四)——迭代器模式
迭代器模式又称游标(cursor,看到这个单词有没有很熟悉)模式,主要用于对容器的访问,比如 List 、 Map 、数组等,因为访问容器一般会用到遍历算法。如果将遍历方法封装在容器类中,容器类就会承担过多功能,而且由于遍历状态的存储问题,还不能对同一个容器同时进行多个遍历操作,但如果让使用者自己实现遍历方法,又会暴露容器内部实现,因此,迭代器模式应运而生,在客户访问类和容器类之间插入一个第三者—原创 2017-05-23 15:23:56 · 303 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十三)——备忘录模式
经常看到某些app里面有撤销原创 2017-05-22 22:54:51 · 446 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十二)——观察者模式
观察者模式,当我刚看到这个模式的名字的时候首先想到的就是Rxjava,看来也是时候正儿八经的学学Rxjava了。观察者模式是一个使用率非常搞的模式,它最常用的地方就是GUI系统(图形操作界面),观察者模式的一大作用就是解耦,将被观察者和观察者解耦,使它们之间的依赖性更小,甚至毫无依赖。对GUI系统来说,观察者模式的目的就是将UI层与具体的业务逻辑解耦。第十二章 解决、解耦的钥匙——观察原创 2017-05-22 11:59:58 · 489 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(六)——抽象工厂模式
一不小心都看了十种设计模式了,准备好好整理下,才发现还有个抽象工厂模式是被之前搁置下来的,是时候理解真正的抽象工厂模式了。第六章 创建型设计模式——抽象工厂模式抽象工厂模式起源于以前对不同操作系统的图形化解决方案,如不同的操作系统中的按钮和文本框其实现不同,展现效果也不一样,对每一个操作系统而言,其本身就可以构成一个产品类,而按钮和文本框控件又是其下属的产品类。1.定义原创 2017-05-16 16:52:57 · 440 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十一)——命令模式
第十一章 让程序畅通执行——命令模式1.定义:将一个请求封装成一个对象,让用户使用不同的请求把客户端参数化,对请求进行排队或者记录请求日志,并支持可撤销的操作。2.使用场景:1).需要抽象出待执行的行为,然后以参数的形式提供出来时。2).在不同的时刻指定、排列和执行请求时。3).需要支持取消操作时。4).支持修改日志功能,当系统崩溃时,这些修改可以被重做一遍时。原创 2017-05-16 15:26:01 · 381 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十)——解释器模式
第十章 化繁为简的翻译机——解释器模式解释器模式是一种用得比较少的行为型设计模式,它提供了一种解释语言或者说是表达式的方法,该模式定义了一个表达式接口,然后通过该接口解释一个特定的上下文。解释器模式使用得相对较少,所以也基本上了解一下就行了。1.定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用定义的表示来解释语言中的句子。实在是不好理解,这其中有几个关键词原创 2017-05-15 16:59:26 · 483 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(七)——策略模式
第六章抽象工厂模式实在是不好理解,我觉得也不能似懂非懂就算了,毕竟这次决定第一遍通读起码要搞懂各种设计模式的基本思想,在源码中如何体现都可以等到阅读代码的能力上去了慢慢消化,但是概念什么的,还是不能就这么跳过了,既然不太好理解,就先放一放,没准什么时候就豁然开朗了,先读读后面的模式换换脑子。第七章 时势造英雄——策略模式在开发工程中经常会实现某个功能而加入多种算法或策略,然后根据具体情况来原创 2017-05-11 22:51:46 · 638 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(五)——工厂方法模式
工厂方法模式是创建型设计模式之一,是一种结构简单的模式,在平时开发中应用很广泛。1.定义:定义一个用于创建对象的接口,让子类决定实例化哪个类。2.使用场景:在任何需要生成复杂对象的地方,都可以使用工厂方法模式。复杂对象适合使用工厂模式,用new就可以完成创建的对象无需使用工厂模式。3.简单实现:工厂模式主要有四大角色,一是抽象工厂,它是工厂方法模原创 2017-05-08 14:30:36 · 425 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十六)——访问者模式
访问者模式是一种将数据操作和数据结构分离的设计模式,它是23种设计模式中最复杂的一个,但是它的使用频率并不高。刚开始我看到这句话的时候又头疼了,而且看它的概念确实很难懂,于是一边看书一边参考一下网上的资料,也算是通过例子简单的理解了它的使用场景和基本实现。参考资料:http://blog.csdn.net/chenssy/article/details/12029633大多数情况下并不需要原创 2017-05-24 11:47:58 · 320 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十七)——中介者模式
中介者模式也成为调解者模式或调停者模式, Mediator 本身就有调停者和调解者的意思。一般我们听“中介”这个词听得最多的莫过于房产中介了,房产中介者的职责就是作为买房者和卖房者之间的桥梁帮忙联系沟通,其实买房者和卖房者的直接接触很少,大多数情况都是通过房产中介者来传达信息的。房产中介者负责协调的无非也就买房者和卖房者两类对象,但是 Android 的中介者模式需要协调的是多类对象,以做一个 A原创 2017-05-25 13:28:53 · 604 阅读 · 0 评论 -
《Android 开发艺术探索》读书笔记(六)——Android 的 Drawable
Drawable 表示的是一种可以在 Canvas 上进行绘制的抽象的概念,它的种类很多,颜色和图片都可以是一个 Drawable。Drawable 是一个抽象类,它的子类很多。在看完原书后,在这里记录几种重要的 Drawable1 Drawable 简介Drawable 种类繁多,全部记下来可能会有些混乱,我只记录一些常用的。使用 Drawable 比起自定义 View 成本低很多,它可...原创 2019-02-14 16:26:58 · 294 阅读 · 0 评论 -
《Android 开发艺术探索》读书笔记(二)——IPC 机制
Android 多进程开发我在平时开发中还没有遇到,但不代表不重要,仍需要了解一下基本概念,Android 的序列化机制和 Binder 是。1 Android IPC 简介IPC 是 Inter Process Communication 的缩写,意为进程间通信或跨进程通信,是指两个进程之间进行数据交换的过程。进程一般指一个程序或一个应用,一个进程可以包含多个线程,线程是 CPU 调度的...原创 2019-01-06 16:21:02 · 278 阅读 · 0 评论 -
《Android 开发艺术探索》读书笔记(一)——Activity 的生命周期和启动模式
Activity 作为 Android 四大组件之首,作为和用户交互的界面,在开发中使用得可谓极其频繁,所以弄清楚 Activity 的生命周期和启动方式是非常重要的,要牢记。1 Activity 的生命周期全面分析1.1 典型情况下的生命周期分析onCreate():该方法调用时表示 Activity 被创建,可以在该方法中做一些初始化工作,如调用 setContentView() ...原创 2018-11-05 21:59:02 · 388 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(八)——状态模式
这两章都比较简单,就不多说废话,直入主题。第八章 随遇而安——状态模式顾名思义,状态模式,肯定跟状态有关系,它是根据状态来决定行为的,即不同状态有不同行为。听起来就跟策略模式很像,不错,都说状态模式和策略模式是“孪生兄弟”,它们的结构几乎一模一样,但是本质却是不一样的,策略模式各策略之间是相互独立、可以互相替换的,但是状态模式之间的行为却是平行的,不可替换。可能这么说还是不太好理解原创 2017-05-12 10:55:35 · 469 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二十)——适配器模式
适配器,我们在 Android 开发中使用得太多了,什么 ListView 的适配器、 RecycylerView 的适配器、ViewPager 的适配器等等等等,这些适配器的原理就是适配器模式。它是将两个不兼容的类融合在一起,让它们可以相互协作,就像一个粘合剂。如果没有适配器的话,要想让两个没有关系的类相互交互,只能去修改各自类的接口,但是这样就违背了开闭原则,适配器可以让我们在不修改源代码的情原创 2017-06-05 18:09:39 · 529 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十九)——组合模式
组合模式也称为部分整体模式,它比较简单,是将一组相似的对象看作一个对象处理,并根据一个树状结构来组合对象,然后提供一个统一的方法去访问相应对象,借此来忽略对象与对象集合之间的差别。第十九章 物以类聚——组合模式1.定义:将对象组合成树形结构以表示“部分—整体”的层次结构,使用户对单个对象和组合对象的使用具有一致性。2.使用场景:1).表示对象的部分—整体层次结构原创 2017-06-02 14:32:03 · 339 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(十八)——代理模式
从这一章开始就是第三种类型的的设计模式——结构性设计模式,所以也停了两天,规划了一下别的学习计划再继续读这本书,这一章的代理模式比较重要,许多设计模式中都有代理模式的影子,代理模式跟中介者模式有点像,就拿房屋中介来举例,对于买房者和卖房者,它是个中介者,但是只对于一方来说,让它代理买房或者卖房,它就是个代理者。第十八章 编程好帮手——代理模式1.定义:为其他对象提供一种代理以控原创 2017-06-02 14:31:44 · 458 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(四)——原型模式
以前就纠结过一个问题,什么是基本类型数据,什么是引用类型数据,它们有什么区别,看了原型模式后,也算是知道了它们的一点区别了。第四章 使程序运行更高效——原型模式原型模式是一个创建型的模式,该模式有一个样板实例,用户从这个样板对象中复制出一个内部属性一致的对象,这个过程就是俗称的“克隆”。被复制的实例就是所谓的“原型”,这个原型是可定制的。原型模式多用于创建复杂的或者构造耗时的实例,因为复制原创 2017-05-05 16:03:46 · 952 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(三)——建造者模式
在使用别人的框架的时候,总觉得那些链式调用的写法看起来很厉害很优雅,一直以为挺难的呢,在书上看到之后才发现也是一种基本设计模式。第三章 自由扩展你的项目——Builder模式Builder模式是一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细地控制对象的构造流程。1.定义:将一个复杂对象的构建与它的表示分离开,使同样的构建过程可以创建不同的表原创 2017-05-05 11:55:54 · 727 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(一)——面向对象的六大原则
写代码很容易,但是写出简单易懂好修改的代码实在。如何优化代码,设计模式是关键,所以最近开始啃书,在这里记录一下读书笔记,大部分是摘录,也有自己的总结和心得,写给自己。第一章、面向对象的六大原则1.单一职责原则Single Responsibility Principle,SRP,其定义是:就一个类而言,应该仅有一个引起它变化的原因。两个完全不一样的功能不应该放在一个类中,比如一个带原创 2017-05-01 20:00:16 · 719 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二十一)——装饰者模式
在之前的我为 RecyclerView 添加 HeaderView 和 FooterView 的时候就提到了 ListView 在添加头布局和脚布局时就用到了装饰者模式,装饰者模式又称为包装模式(Wrapper Pattern),它使用一个对客户端透明的方式来动态扩展对象的功能,同时也是替代继承关系的方案之一。在生活中也能体现装饰者模式,比如人要穿衣服,可以穿运动装和正装,但是无论怎么样,本质都还原创 2017-06-06 14:22:24 · 625 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二十二)——享元模式
刚开始看到这个模式的名字的时候,还感觉看不懂的样子,以为很难,但是看了它的介绍后就没这么恐惧了。享就是共享,元就是一个单元,也就是对象的意思,所以享元就是共享对象,从这点来看享元模式跟单例模式挺像的,或者说享元模式是单例模式的一种扩展。享元模式是对象池的一种实现,它的目的也是达到对象共享,避免创建多对象,以此来提升性能。它并不是只有一个对象,享元对象中的部分状态可以共享,这部分状态称为内部状态,内原创 2017-06-08 22:33:42 · 559 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二)——单例模式
单例模式是我们常用的一种模式,我也经常使用,但是却不知道它还是一种设计模式,估计很多初级工程师也跟我一样,只会这一种设计模式吧。 第二章 应用最广的模式——单例模式单例模式是应用最广的模式之一1.定义确保某一个类只有一个实例,而且自行实例化并向整个程序提供这个实例。许多时候整个程序只需要拥有一个全局对象,这样有利于我们协调程序整体的行为。 2.使用场景避免产生多个对...原创 2017-05-02 15:50:12 · 1002 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二十四)——桥接模式
桥接模式也称为桥梁模式,在现实生活中桥是负责连接河道两岸的交通枢纽,桥接模式也类似,负责连接“两边”。第二十四章 连接两地的交通枢纽——桥接模式1.定义将抽象部分和实现部分分离,使它们可以独立地进行变化。所以连接“两边”就是连接抽象部分和实现部分。2.使用场景1).一个系统需要在构建的抽象角色和具体角色间增加更多的灵活性,避免在两个层次之间建立静态的继承联系时。原创 2017-06-09 14:07:41 · 429 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(九)——责任链模式
之前忘记记录了,策略模式和状态模式是行为型模式。设计模式共23种,分三大类:1).创建型模式5种:单例模式,建造者模式,原型模式,工厂方法模式,抽象工厂模式。2).行为型模式11种:策略模式,状态模式,责任链模式,解释器模式,命令模式,观察者模式,备忘录模式,迭代器模式,模版方法模式,访问者模式,中介者模式。3).结构型模式7种:代理模式,组合模式,适配器模式,装饰模式,享元模式,外观原创 2017-05-15 14:49:53 · 399 阅读 · 0 评论 -
《Android源码设计模式解析与实战》读书笔记(二十三)——外观模式
外观模式(Fcade)在开发过程中使用频率非常高,可能在开发中已经运用了无数次外观模式,只是没有在理论层次认识它,这句话也是我看这本书最大的体会,就是不看不知道,一看才知道我们平时用到的代码,其实里面已经包含了很精妙的设计模式。外观模式是封装 API 的一种常用手段,在第三方 SDK 中一般都使用了外观模式,通过一个外观类可以使整个系统的接口一个只有一个统一的高层接口,降低用户使用成本,也屏蔽了很原创 2017-06-09 11:21:53 · 404 阅读 · 0 评论