您当前的位置:首页>课程>Android与设计模式

Android与设计模式

浏览:2240
分享

Jam Bao Read more

百林哲咨询(北京)有限公司专家团队成员

前去哪儿网机票事业群高级技术总监,毕业于复旦大学数学系,先后在多家互联网公司担任无线部门技术总监,擅长iOS和Android。

简介

根据讲师十多年奋战在一线的实战经验,详细剖析对设计模式的理解与实践,尤其是结合最近几年来在Android领域的思考和研究。本课程系列将介绍GOF经典设计模式以及面向对象设计的5大原则,分析这些设计模式在Android中的实际使用场景,并使用大量案例,在短短的几堂课中,帮助学员迅速掌握学习设计模式的方法。

目标

掌握二十多个设计模式在Android中的使用场景,理解模式背后深层次的思想,更重要的是,学会如何学习一门新技术。

课程时长

1天(6H)

受众人群

从事Android开发1-2年的程序员。对设计模式感兴趣的程序员。对新技术充满渴望的程序员。

分享提纲

第1讲 SOLID

单一性原则

一个类只干一件事情

Activity中剥离Adapter

开闭原则

对扩展开放,对修改封闭

switchcase谈起

里氏替换原则

父类,子类?

对多态的重新认识

白马与马

依赖倒置原则

依赖于抽象,而不是依赖于具体

模版方法

WebServiceJSON

接口隔离原则

类之间的依赖,建立于最小粒度的接口

看人下菜碟

宽窄接口

迪米特法则

不要和陌生人说话

总结

《建筑的永恒之道》

Has-AIs-A

组合,还是继承?

可插拔技术

面向接口编程

第2讲 创建型设计模式

简单工厂

n 定义及UML图、通用代码实现

Android中的使用场景:ActivityonCreate方法

Android中的一个例子:文件存储

工厂模式

定义及UML图、通用代码实现

简单工厂与工厂的微小区别

反射与工厂模式的配合

抽象工厂模式

n 定义及UML图、通用代码实现

与工厂模式的区别

文件存储的抽象工厂实现

单例模式

定义及UML图、通用代码实现

序列化

多例

Android中的使用场景:ImageLoader

原型模式

定义及UML图、通用代码实现

浅拷贝和深拷贝

一个例子:孙悟空的分身

Android中的使用场景:Intent

生成器模式

定义及UML图、通用代码实现

编写一个例子:绘制笑脸

变体:Director的蜕化

Android中的使用场景:AlertDialog

第3讲 构造型设计模式(1

适配器模式

定义及UML图、通用代码实现

类适配器和对象适配器

一个例子:变压器

Android中的使用场景:Adapter

l 桥接模式

定义及UML图、通用代码实现

两个维度的简单工厂

加法,还是乘法?

编写一个例子:蜡笔与水彩笔

代理模式

定义及UML图、通用代码实现

Android中的实现:BinderAIDL

静态代理和动态代理

远程代理

虚拟代理

保护代理

智能引用

Android插件化的一种实现方式:静态代理

第4讲 构造型设计模式(2

组合模式

温习一下递归算法

定义及UML图、通用代码实现

实现的两种方式

一个现实中的例子:山上有座庙

Android中的使用场景:View和ViewGroup

享元模式

定义及UML图、通用代码实现

不变模式

享元是多例与不变模式的组合

自己编写一个例子:围棋

Android中的使用场景:String

装饰器模式

定义及UML图、通用代码实现

编写一个例子:炒菜

Stream流

Android中的使用场景:ContextWrapper

外观模式

定义及UML图、通用代码实现

Android中的使用场景:Context

第5讲 行为型设计模式(1

职责链模式

定义及UML图、通用代码实现

Android中的应用:事件分发机制

写一个例子:游戏中的伤害计算

模版方法模式

定义及UML图、通用代码实现

Android中的应用1:AsyncTask

Android中的应用2:Activity的生命周期函数

命令模式

定义及UML图、通用代码实现

例子1:玉皇大帝派太上老君封孙悟空为齐天大圣

回滚(undo)

Android中的应用1:AAPT

备忘录模式

定义及UML图、通用代码实现

回滚机制的另一种实现

例子:单机游戏的保存和加载

宽窄接口:IMemento

Android中的应用:onSaveInstanceState

第6讲 行为型设计模式(2

迭代器模式

定义及UML图、通用代码实现

外部迭代器和内部迭代器

Android中的应用:Cursor

策略模式

定义及UML图、通用代码实现

基于策略模式的排序算法

Android中的应用:Comparator

观察者模式

定义及UML图、通用代码实现

例子:RSS

Android中的应用1:AdapternotifyDataSetChanged方法

Android中的应用2:BroadcastReceiver

Android中的应用3:事件总线EventBus

中介者模式

定义及UML图、通用代码实现

Android中的应用:Activity中控件间通信

编写一个例子:房产中介

状态模式

 定义及UML图、通用代码实现

写一个例子:空调遥控器

Android中的应用:View的onVisibilityChanged方法

在App中的应用:用户登录



我要参加

可同时提交您的需求,我们会及时与您联系

预约内训

将课程带入到您的团队,为您的团队进行一对一辅导。

相关课程