野生程序员

一步一步往上爬

排序:
默认
按更新时间
按访问量

Android-ANR总结原理分析

1、概述 ANR即Application Not Responding(应用程序无响应),一般在ANR的时候会弹出一个应用无响应对话框,同时会候产生一个日志文件trace.txt,位于/data/anr/文件夹下面,trace文件是Android Davik虚拟机在收到异常终止信号时产生的,最常...

2018-08-19 19:28:41

阅读数:110

评论数:0

彻底理解Android中的ThreadLocal

三、源码分析 1、构造方法 public ThreadLocal() {} 2、set方法 public void set(T value) { //获取当前线程 Thread currentThread = Thread.currentThread(); ...

2018-07-09 10:05:50

阅读数:87

评论数:0

一篇文章彻底理解SharedPreferences

一、概述 SharedPreferences简称Sp(后面都会称Sp),是一种轻量级的数据存储方式,采用Key/value的方式 进行映射,最终会在手机的/data/data/package_name/shared_prefs/目录下以xml的格式存在。 Sp通常用于记录一些参数配置、行为标...

2018-07-01 21:01:14

阅读数:1956

评论数:0

设计模式—桥接模式

重点内容 定义将抽象部分与实现部分分离,使它们都可以独立地进行变化使用场景如果一个系统需要在构件的抽象化角色和具体化角色之间增加更多的灵活性,避免在两个层次之间建立静态的继承关系,可以通过桥接模式使他们在抽象层建立一个关联关系对于那些不希望使用继承或因为多层次继承导致系统类的个数急剧增加的系统,...

2018-02-04 23:25:39

阅读数:63

评论数:0

设计模式—外观模式

定义要求一个子系统的外部与其内部的通信必须通过一个统一的接口对象进行。该模式提供一个高层次的接口,使得子系统更容易使用。使用场景为一个复杂子系统提供一个统一的简单接口。子系统往往因为不断演化而变得越来越复杂,甚至可能被替换。大多数模式使用时都会产生更多更小的类,这使子系统更具可重用性的同时也更容易...

2018-02-04 22:39:29

阅读数:53

评论数:0

设计模式—享元模式

简介享元模式时对象池的一种实现,用来尽可能减少内存的使用量,适合用于可能存在大量重复对象的场景,来缓存可共享的对象,达到对象共享、避免创建过多对象的效果,这样就可以有效的提升性能、避免内存移除等。享元对象中的部分状态是可以共享的,可以共享的状态称之为内部状态,内部状态不会随着环境变化,不可共享的状...

2018-02-01 23:22:56

阅读数:60

评论数:0

设计模式—装饰模式

定义动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式生成子类更灵活。使用场景需要透明且动态的扩展类的功能时关键点一个抽象组件角色—接口或抽象类,被装饰的原始对象一个或多个具体组件—抽象组件的具体实现,被装饰的具体对象一个抽象装饰角色—抽象类,装饰组件对像,持有组件对象引用一个或多个具体...

2018-01-31 22:31:35

阅读数:51

评论数:0

设计模式—适配器模式

定义适配器模式把一个类的接口转换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法一起工作的的两个类能够在一起工作使用场景系统需要使用现有的类,而此类的接口不符合系统的需要,即接口不兼容想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作需...

2018-01-31 21:54:39

阅读数:58

评论数:0

设计模式—组合模式

简介组合模式也成为部分整体模式,它将一组相似的对象看作一个对象来处理,并根据一个树状结构来组合对象,然后提供统一的方法去访问相应的对象定义将对象表示成树形结构以表示“部分—整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。使用场景表示对象的部分、整体层次结构时从一个整体中能够独立出部...

2018-01-30 19:44:31

阅读数:41

评论数:0

设计模式—代理模式

定义 为其他对象提供一种代理以控制对这个对象的访问 使用场景 当无法或不想直接访问某个对象或者访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口 关键点 一个抽象角色—声明具体对象和代理对象共同的接口方法为抽象类或者接口...

2018-01-30 19:10:37

阅读数:50

评论数:0

设计模式—中介者模式

定义中介者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而可以使他们可以松散耦合。当某些对象之间的作用发生改变时,不会立即影响其他的一些对象之间的作用。从而保证这些作用可以彼此独立变化。中介者模式将多对多的相互作用转化为一对多的相互作用。中介者模式将对象的行为和协作抽象化,把...

2018-01-24 23:26:21

阅读数:42

评论数:0

设计模式—访问者模式

简介访问者模式是一种将数据操作与数据结构分离的设计模式,基本思想是软件系统中拥有一个由许多对象构成的、比较稳定的对象结构,这些对象都拥有一个accept方法用来接受访问者对象的访问。访问者是一个接口,拥有一个visit方法,这个方法对访问到的对象结构中不同类型的元素做出不同的处理。定义封装一些作用...

2018-01-23 23:18:53

阅读数:55

评论数:0

android架构设计—mvp模式封装

简介关于Android程序的构架, 当前比较成熟且使用最多的应该就是MVP架构了,当然还有其他的如:MVC和MVVM。MVC相对于较为落后,、耦合度太高、职责不明确,MVVM使用DataBind,普及性不如MVP,况且Google官方提供了Sample代码来展示MVP模式的用法。因此选择MVP架构...

2018-01-21 14:10:52

阅读数:6073

评论数:3

设计模式—模板方法模式

定义定义一个操作中的算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤,通俗来讲就是流程固定,具体实现不同使用场景多个子类有公有的方法,并且逻辑基本相同重要、重复的算法,可以把核心算法设计为模板方法,周边的相关细节功能则由各个子类实现重构时,模板...

2018-01-18 22:40:39

阅读数:44

评论数:0

设计模式—迭代器模式

简介 作为开发者,势必会涉及到容器的操作,比如Java中的List、Map等,对容器的访问必然会涉及到遍历算法,如果将对容器的遍历封装在容器内部,对容器而言就承担了过多的功能,容器类不仅要维护自身内部的数据元素而且还要对外提供遍历的接口方法,因为遍历状态的存储问题不能对同一个容器同时进行多个遍历操...

2018-01-18 22:02:07

阅读数:34

评论数:0

设计模式—备忘录模式

简介备忘录模式是一种行为模式,该模式用于保存对象当前状态,并且在之后可以再次恢复到此状态。备忘录模式实现的方式需要保证被保存的对象状态不能被对象从外部访问,目的是为了保护好被保存的这些对象状态的完整性以及内部实现不向外暴露。定义在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状...

2018-01-16 23:10:20

阅读数:79

评论数:0

设计模式—观察者模式

定义定义对象间一种一对多的依赖关系,使得每当一个对象状态改变时,所有依赖于它的对象都会得到通知并被自动跟新使用场景关联行为场景,需要注意的是关联行为是可拆分的,而不是组合关系事件多级触发场景跨系统的消息交换场景,如消息队列、事件总线的处理机制关键点一个抽象被观察者(Observable)—抽象主题...

2018-01-15 23:09:05

阅读数:34

评论数:0

设计模式—命令模式

简介命令模式其实就是将一系列的方法调用进行封装,用户只需要调用一个方法执行,那么所有这些被封装的方法将会被依次调用。定义将一个请求封装成一个对象,从而让用户使用不同的请求将客户端参数化,对请求队列或者记录请求日志,以及支持可撤销的操作使用场景需要抽象出待执行的动作,然后以参数的形式提供出来在不同时...

2018-01-15 21:43:19

阅读数:35

评论数:0

设计模式—责任链模式

定义使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条连传递该请求,直到有对象处理它为止。使用场景多个对象可以处理同一请求,单具体由哪个对象处理则在运行时决定在请求处理这不明确的情况下向多个对象提交一个请求需要动态指定一组对象处理请求关键点一...

2018-01-14 18:54:30

阅读数:44

评论数:0

设计模式—状态模式

简介状态模式中的行为由状态决定,不同的状态下有不同的行为。状态模式和策略模式的结构相同,但本质和目的却完全不一样。状态模式的行为是平行、不可替换的,策略模式的行为时彼此独立、可相互替换的。概括起来就是状态模式把对象的行为包装在不同的状态对象里,每一个状态对象都有一个共同的抽象状态基类。定义当一个对...

2018-01-11 23:43:04

阅读数:36

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭