自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黄俊彬

优秀是一种习惯,坚持是一种品质

  • 博客(8)
  • 收藏
  • 关注

原创 Android之Context底层原理

1.Context基本概念Context的中文翻译为:语境; 上下文; 背景; 环境,在开发中我们经常说称之为“上下文”。从Android系统的角度来理解:Context是一个场景,代表与操作系统的交互的一种过程。Context在加载资源、启动Activity、获取系统服务、创建View等操作都要参与  。从程序的角度上来理解:Context是个抽象类,而Activity、Service、Ap

2017-01-19 10:00:32 3716

原创 设计模式-建造者模式

1.建造者模式的定义及使用场景Builder模式是一步一步创建一个复制对象的创建型模式,他允许用户在不知道内部构建细节的情况下,可以更精细地控制对象的构造流程。改模式是为了将构造复杂对象的过程和它的部件解耦,使得构建过程和部件的表示隔离开来。1.1定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建同步的表示1.2使用场景相同的方法,不同的执行顺序,产

2017-01-18 10:14:02 2560

原创 Android消息机制底层原理

1.概述Android的消息机制主要是指Handler的运行机制,Handler的运行需要底层的MessageQueue和Looper的支撑。MessageQueue是消息队列。他的内存存储了一组消息,以队列的形式对外提供插入和删除的工作。他的内部存储结构并不是真正的队列,而是采用单链表的数据结构来存储消息列表。Looper为消息循环,由于MessageQueue只是一个消息的存储单元,它不能

2017-01-17 20:44:47 3915

原创 设计模式-模板模式

1.模板模式的定义及使用场景定义一个操作中的算法框架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。使用场景:1)多个子类有公有的方法,并且逻辑基本相同2)重要、复杂的算法,可以把核心算法设计为模板方法,周边的相关细节功能则由各个子类实现3)重构时,模板方法模式是一个经常使用的模式,把相同的代码抽取到父类中,然后通过钩子函数约束其

2017-01-14 09:42:09 2929

原创 设计模式-抽象工厂模式

1.抽象工厂模式的定义及使用场景抽象工厂也是创建型设计模式之一。为创建一组相关或者是相互依赖的对象提供一个接口,而不需要指定他们的具体类。一个对象族有相同约束时可以使用抽象工厂模式。2.抽象工厂模式的优缺点2.1优点1)良好封装性,低耦合2)产品族内具有约束性,且为非公开状态2.2缺点产品族的扩展非常困难,需要修改抽象工厂及其实现,违背了开闭原则。但工厂

2017-01-11 12:13:39 2693

原创 设计模式-工厂模式

1.工厂模式的定义及使用场景工厂模式是创建型设计模式之一。定义一个用户创建对象的接口,让子类决定实例化那个类。工厂模式是new一个对象的替代品,所以在所有需要生成对象的地方都可以使用2.工厂模式的优缺点2.1优点1)良好的封装性,代码结构清晰2)具有良好的扩展性,在增加产品类的情况下,只要适当地修改具体的工厂类或扩展一个工厂类,就可以完成需求变化3)典型解耦框架,遵

2017-01-10 09:36:16 2717

原创 设计模式-单例模式

1.单利模式的定义及使用场景确保某一个类只有一个实例,而且自行示例化并向整个系统提供这个实例。确保某个类有且只有一个对象的场景,避免产生多个对象消耗过多的资源,或者某种类型的对象应该有且只有一个。例如创建一个对象需要消耗的资源过多,如要访问IO和数据库等资源,这时就要考虑使用单例模式。2.单例模式的优缺点2.1优点1)减少内存,特别是一个对象需要频繁地创建、销毁,而且创建或

2017-01-06 09:33:20 582

原创 设计模式-面向对象的六大设计原则

在应用的开发过程中,最难的不是完成应用的开发工作,而是在后续的升级、维护中让应用系统能够拥抱变化。拥抱变化也就是意味着在满足需求且不破坏系统稳定性的前提下保持高可扩展性、高内聚、低耦合,在经历了各版本的变更之后依旧保持清晰、灵活、稳定的系统架构。虽然在实际的应该开发中,要饱受产品的折磨和摧残、需要在极其有限的研发时间里完成功能、上线。但是我们仍需尽量保持遵循面向对象的六大设计原则,这才能让我们不必

2017-01-03 09:39:48 677

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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