Android开发最佳学习路线图

    为了帮助大家更好的学习Android开发的相关知识,尚观4G智能操作系统研究室(www.up4g.com)为大家制作以下学习路线图;希望能帮助到广大的android爱好者。 在开始之前我们先来对相关知识进行一个简单的了解:
 
行业背景:
       今天,涉及通信产业链中的每个环节,都有Android的身影,Android是第一款完全完整打通了整个通信产业链中的操作系统,手机方案商、集成商、运营商、内容提供商、用户,都在玩Android,都惊讶于Android的爆发式增长速度,Android现在每天有超过50万台新的Android设备启用。
       随着Android平台的扩张,引发了Android人才荒,未来人才需求缺口将达百万。但符合条件的Android工程师屈指可数,企业招聘难度可想而知。据新京报等媒体报道Android工程师一年经验月薪8000元,对此李开复曾在微博谏言学生转学Android软件开发。我们相信,在未来几年内,Android开发工程师将成为3G行业炙手可热的岗位之一。

什么是Android: 
       Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用安卓(非官方)或安致(官方)。Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。 2010年末数据显示,仅正式推出两年的操作系统的Android已经超越称霸十年的诺基亚Symbian系统,跃居全球最受欢迎的智能手机平台。

行业薪资: 
       必学 Android的理由:
       更快的薪酬提升通道    更好的热门就业岗位    更多的行业人才需求    最热门的新技术行业
据新京报等媒体报道Android工程师一年工作经验月薪可达8000元。李开复在微博上谏言学生转学Android软件开发。尚观已毕业学员薪资最高16000元/月(税后),最低3000元/月(在读专科),平均起薪4828.84元/月。 

                                                                                                                                                  查看尚观Android学员就业详情

Android开发总体路线图:
        

基础学习——JavaSE:
       很多朋友一上手就开始学习Android,似乎太着急了一些。Android应用程序开发是以Java语言为基础的,所以没有扎实的Java基础知识,只是机械的照抄别人的代码,是没有任何意义的。那么Java学到什么程度才算是过关呢?以下的JAVA的基础(JavaSE)语法知识必须全面掌握。

经典学习视频教程
Java 概述 标示符、关键字1 标示符、关键字2 运算符

流程控制1

流程控制2 字符串数组 面向对象编程特征1 面向对象编程特征2 面向对象编程特征方法
面向对象编程特征 构造方法 面向对象编程特征this 面向对象编程特征 static package 访问控制
继承1 继承2 继承3 接口1 接口2
接口3 多态1 多态2 异常处理1 异常处理2
集合1 集合2 集合3 集合4 集合5
集合6 集合7 集合8 文件 文件和目录1
文件和目录2 IO简介 文件流 缓冲流 缓冲流读写
DB Eclipse 多线程1 多线程2 多线程3
多线程4 多线程5 网络编程1 网络编程2 网络编程3
网络编程4 文件读写 转换流 打印流 随机访问
GUI-AWT GUIAWT2 GUIEVent GUI-作业 GUIswing
GUIswing2        

基础学习扩展——JavaEE:
       由于很多Android应用程序都需要服务器端的支持,所以掌握一些服务器端开发知识还是非常有必要的。Java EE:SSH—Struts+Spring+Hibernate。这种技术的优点的功能完整、强大,已经使用了很多年,而传统的互联网应用,大多数都是采用JAVA为其构造平台,这使得众多的内容提供商可快速的通过学习进入到Android的产品开发中来,并且可根据自己的内容特色更多的将精力放到交互设计以及UI表现力方面,大大缩短了移动互联网应用的开发周期。

经典学习视频教程:
JDBC-简介 jdbc_connection jdbc_statement jdbc_statement jdbc_resultset
jdbc_metadata jdbc_preparedsta jdbc_callablest jdbc_dao01 jdbc_dao02
WEB工程结构 Servlet简介 Servlet Fom表单处理 Servlet请求头信息 Servlet相应头信息
Servlet Cookie Servlet Session Servlet-Scope Servlet-Filter Servlet-Listener
Servlet-Resource JSP 简介 JSP-脚本元素 JSP-指令元素 JSP-动作元素
JSP-内建对象 JSP-自定义标签 JSP-JSTL JSP-EL JSP-MVC
JSP_Project01 JSP_Project02 Struts简介 Struts action StrutsActionForm
Struts标签 Struts Dispatch 自动生成Struts Struts1自动验证1 Struts1自动验证2
Struts1tags2 struts tags3 Struts tags4 Struts project1 Struts project2
Struts project3 Struts project4 hibernate_配置01 hibernate_配置02 hibernate_基础配置
hibernate_CompositeKey hibernate_Component hibernate_大数据类型 hibernate_继承映射 hibernate_继承映射实例
hibernate_关联映射 hibernate_HQL hibernate_autoGen hibernate_pro2 struts2_config
struts2_action struts2_action2 struts2converter 上次课作业 commons-fileupload
struts2_Interceptor01 struts2_Interceptor02 struts2_Validation struts2_I18N struts2_tags01
struts2_tags02 struts2_project1 Spring简介 Spring简介2 Spring-IOC
Spring-DI Spring-AOP spring-AOP-API spring-AOP-XML spring-AOP-Transaction
spring-JDBC01 Spring集成Hibernate      

经典学习书籍推荐:
       Java学习的书籍目前有很多,我们在这里为大家推荐几本入门书籍适合初中级学习者,供大家参考。
《Java编程规范》
适合对象:初级,中级
介绍:作者James Gosling(Java之父),对基础讲解的很不错。
《Java编程思想》
适合对象:初级,中级
介绍:这本书的作者就是著名的C++编程思想,对OO的理解很好,Java作为一门面向对象的语言,你学习Java最好也同时参考这本书进行入门学习。

《Java核心技术:卷Ⅰ基础知识》
适合对象:初级,中级
介绍:官方机构图书,你怎么也得有一本,这本书比较全面而且易懂。放在案旁用到的时候查一查,看一看。是学习入门必备书。


基础学习扩展——Linux基础:
       Android是一种以Linux为基础的开放源码操作系统,在将来的学习和工作当中我们都会与linux命令打交道,补充一些Liunx基础知识还是很有必要的。

经典学习视频教程
Linux学习建议1 Linux学习建议2 UNIX like系统的特点 UNIX原则 系统结构与终端控制台
RHEL5 Linux安装 Linux下寻求帮助 文件相关命令初步 系统命令初步 用户及组管理初步
文件属性 文件夹属性及umask Linux编辑器及VIM初步 Linux查找及压缩 文本处理及正则表达式
输入输出重定向及管道 进程控制 进程优先级前台后台 bash变量快捷键 bash运算符及启动脚本
shell脚本及交互 shell脚本流程控制 shell脚本sed&awk Linux安装软件 linux下X图形显示体系

经典学习书籍推荐:
       《鸟哥的私房菜》非常不错很适合初学者。
                                                     

Android开发学习——基础理论:系统架构分析:
       Android系统从底向上一共分了4层,每一层都把底层实现封装,并暴露调用接口给上一层。
1. Linux内核(Linux Kernel)
       Android运行在linux kernel 2.6之上,但是把linux内受GNU协议约束的部分做了取代,这样在Android的程序可以用于商业目的。 Linux 内核是硬件和软件层之间的抽象层。

2. 中间件 中间件包括两部分:
       核心库和运行时(libraries & Android runtime) 核心库包括,SurfaceManager 显示系统管理库,负责把2D或3D内容显示到屏幕;Media Framework 媒体库,负责支持图像,支持多种视频和音频的录制和回放;SQlite 数据库,一个功能强大的轻量级嵌入式关系数据库;WebKit 浏览器引擎等。
Dalvik虚拟机:
       区别于Java虚拟机的是,每一个Android 应用程序都在它自己的进程中运行,都有一个属于自己的Dalvik 虚拟机,这一点可以让系统在运行时可以达到优化,程序间的影响大大降低。Dalvik虚拟机并非运行Java字节码,而是运行自己的字节码。
3. 应用程序框架(Application Framework)
       丰富而又可扩展性的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids), 文本框(text boxes),按钮( buttons), 可嵌入的web 浏览器。内容提供者(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据。资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串,图形,和布局文件( layoutfiles )。通知管理器(Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

2. 中间件 中间件包括两部分:
       Android 系统会内置一些应用程序包包括email 客户端,SMS 短消息程序,日历,地图,浏览器,联系人管理程序等。目前基本所有的应用程序都是使用JAVA 语言编写的。

经典学习视频教程
Android发展现状及前景 Android 简介 Android-HelloWorld Android 应用程序基本原理 Android 布局简介
Android 选项菜单 Android 通过XML配置文件创建菜单 Android 上下文菜单 Android 子菜单 Android 对话框
Android 其它常见对话框 Android 用户界面Toast Android 用户界面-布局-线性布局 Android 用户界面-相对布局 Android 用户界面-表格布局
Android 用户界面-表格布局2 Android 事件处理 Android 用户界面-常用组件 Android 用户界面-自动完成文本 Android 用户界面-列表视图
Android用户界面列表视图2 Android时间选择对话框 Android 用户界面-进度条 Android 用户界面-表格视图 Android 用户界面-选项卡
Android 播放器 Android无线点餐系统 博客登陆客户端1 博客登陆客户端2 俄罗斯方块1
俄罗斯方块2        


经典学习书籍推荐:
       《Android应用开发详解》书内容详细,案例丰富比较适合大家学习用。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。