Android移动开发高手必修课程

课程介绍
    通过Android移动开发高手必修课程学习及实践,主要掌握可以让你开发最高效率的Android程序并彻底理解系统,同时会对对软件架构设计有脱胎换骨的理解,最后会对Android系统有全新的认识,从此移动互联网从业生涯海阔天空。

课程目标:
    从一个普通的Android开发工程到成为一个高手级别的Android开发者和架构师,需要掌握:
    1,精通Android程序运行的消息驱动机制,包括对整个消息驱动机制所有源码和运行流程的彻底理解;
    2,通晓Android程序开发的最佳模式,当你直到这个最佳模式的时候,你会发现AsyncTask是Android的败笔,而且这个败笔一直未能够在版本升级中解决;
    3,理解Android程序开发和运行背后的控制者;
    4,掌握HAL并理解Native Service;
    5,掌握Android Application Framework,尤其ActivityManagerService是如何掌控应用程序的行为的;
    6,Android Service的开发和管理;
    本课程正是帮你解决如上的核心问题。

课程特色:
    1,以超过20款Android应用程序商业软件和超过6款硬体产品为经验基础,带你领悟Android应用程序开发的最高秘密和系统研究的核心内幕,这些内容主要会来自于和三星、HTC、摩托罗拉等的合作经验;
    2,以商业级代码和生产环境基石。

课程对象: 有一定Android开发基础,想成为Android高手

课程长度:2天

最新时间:定制课程(内训),人满开班(公开课)

传统的面对面授课方式。

 

课程大纲:

1:Android应用程序开发的最佳模式(具备理解所有框架内部核心构造的能力)
    1)、Main Thread+HandlerThread
    2)、剖析HandlerThread的源码实现
    3)、使用HandlerThread的最佳实践
2:Android应用程序的灵魂消息驱动机制(具备理解框架运转动力的能力)
    1)、为何消息驱动是框架和应用程序的灵魂
    2)、以Android的ActivityThread、Looper、Handler、MessageQueue为例说明消息驱动机制
    3)、源码深度剖析ActivityThread、Looper、Handler、MessageQueue
    4)、消息驱动机制的启示
3:Android的败笔AsyncTask剖析(具备理解设计框架所常用的招式的能力)
    1)、使用AsyncTast
    2)、从源码剖析中说明为什么AsyncTask是Android的败笔
    3)、如何改进AsyncTask
4:软件架构设计的金三角模式(具备理解所有软件框架内部核心构造的能力)
    1)、以Thread&Runnable为例说明的软件框架设计的内核元素
    2)、以Android为例说明软件框架的内核元素
    3)、以云计算分布式大数据处理框架Hadoop为例说明软件框架的内核元素
    4)、以HTML5框架PhoneGap说明软件框架的内核元素
5:硬件开发框架实例研究:Hardware Abstract Layer驱动开发(具备理解和开发硬件驱动框架的能力)
    1)、深入Native Service驱动程序架构
    2)、libhardware 与 HAL API
    3)、Stub & Module 的观念
    4)、HAL Interface与HAL Stub
6:应用程序开发框架实例研究:Android Framework 架构原理分析(具备理解和开发应用程序框架的能力)
    1)、Proxy Object与Android Service的模式的关系
    2)、Handler 与 Message 的解析与实作细节
    3)、Introduction to Software Framework
    4)、软件框架实战: IoC、扩展性与不可修改性
    5)、先设计(Design)后实现(Implementation)
    6)、Doing Long Operations
    7)、Design Patterns of Android Framework
7:框架中服务管理实例研究:Android Service 架构 SystemServer 整合开发(具备最有管理框架中服务的能力)
    1)、Zygote & SystemServer 介绍
    2)、ServiceManager介绍    
    3)、IPC、Remote method call与Binder管理说明
    4)、AIDL 介绍与IInterface设计观念解析
    5)、Activity & ApplicationContext
    6)、ServiceManager
8:框架中的服务整合实例研究:Android Service模式下框架整合(具备对软件框架进行整合的能力)
    1)、Android Service Model 解析
    2)、Why use IPC ?
    3)、How to do Blocking IO?
    4)、How to do Data Polling?
    5)、Using Child Thread for Async Method Call
    6)、Callback and Interface Design
    7)、Thread-Safe 观念与实现