小编有话说:

日前,华清远见专家就Android开发者的成长之路进行分析,专家表示Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大。因此,一个好的学习方法对我们学习Android开发很重要。

之前曾经写过一篇文章,题目为《Android开发的入门之路》。在那篇文章中,我对于Android的市场情况谈了谈自己的看法,也对如何学习Android开发提了一些建议。限于篇幅,上次的文章中,对Android的具体学习过程和相关经验没有做太多的说明,今天就这个话题,结合华清远见3G学院的“3G Android系统开发班”就业培训课程再展开谈谈,希望能够给更多朋友以帮助和建议,欢迎拍砖。

在讨论Android学习之前,我们先来关心一下从上篇文章到现在2个多月近3个月时间内和Android相关的2条重要新闻。

Android行业新动态

最近和Android相关的新闻,从重要性来说,当然就是Android 4(Ice Cream Sandwich)的发布。在这个全新的平台中,Android不再将手机和平板分成2个分支,而是将其合二为一。这对于开发者来说,无疑是非常有利的,同时这也充分说明了移动开发领域的发展趋势和日益广阔的应用领域。另外,它在沟通和共享、多媒体支持、网络连接能力、UI组件等方面都有令人兴奋的更新。另外,就是Google终于又宣布Android4将重新开源。

搭载Android 4.0的Galaxy Nexus

Android业内另一件大事,虽然很轰动,但很多人并没有将它跟Android联系起来,那就是Amazon在9月28日推出自己的平板电脑——Kindle Fire,它是一款基于Android的深度定制的平板电脑。在苹果和乔布斯的光芒掩盖之下,估计很多人对此并不以为然。但是别忘了,这是一家怎么样的公司:它2010年的收入比Google还多20亿美元,而且,更重要的是,经过多年的发展,他已经建立起了世界上最庞大的网络电影和电视商店以及电子书库、拥有仅次于苹果的在线音乐商店,并且,它有自己的Android应用程序商店,拥有超过一万款付费应用。现在它推出了自己的硬件,其令人吃惊和骄人的业绩是,在Kindle Fire发布的第五天,其预定人数已经超过25万!这和iPad 2推出时的情形非常类似,这意味着什么,我想大家应该都能想到——一个类似于苹果的、基于Android的生态系统正在形成,而这对于我们开发者来说,无疑也是非常有利的。

Amazon Kindle Fire

聊完最近的一些Android市场动态信息,我们进入正题,谈谈如何学习Android开发。

如何做好Android学习前的准备?

如果你已经确定了学习Android的目标,那么,应该提前做好哪些工作、先打下哪些基础呢?
首先,你最好先熟悉一门编程语言,现在大学里面和计算机相关的专业甚至理工类专业一般都会开设C语言课程,只是很多同学在大学期间并没有好好学习,如果对它掌握的不太好或者很久没用了,建议先从将其好好复习一下,将其基本的语法再好好回顾一下,最好能搭建一个环境来运行、调试它。如果没有学过,不妨也提前学习一下,可以参考清华大学出版社出版的谭浩强老师的《C语言程序设计》,推荐这本书的原因,一是它已经经过了多年的考验,应该说还是比较严谨的;其次就是大部分的高校所开设的C语言使用的教材都是用它作为教材,因此无论是购买还是借阅,都容易找到。另外,华清远见网站上也有一些这方面的教学视频可以结合来看。

其次,如果你后续有志于游戏方面的开发,你最好具备一定的数据结构和算法基础知识。这一点是我在华清远见的讲台上,给学员们坚持强调的。虽然现代的高级编程语言中,其类库中已经帮我们实现了大部分的数据结构,一般情况下,我们直接使用即可。但如果你能对其原理有所了解,当你需要在这些数据结构和算法中间的时候,你可以能更加的清楚到底应该选择那个数据结构或者算法。另外,在图形图像处理上面,线性代数的作用也非常重要,如果能掌握一点这方面的基础知识,无疑也会在后续的学习中如虎添翼。举个例子,在Android中,有一个用于图形变换的类Matrix,用起来稍有点难。其实它的理论基础就是线性代数中的矩阵,如果你了解矩阵的基本算法,这个类的使用可以说就易如反掌了。

第三,因为Android应用的开发语言用的是Java语言,并且在Android中也用到了Java核心类库的大量的类,因此,在学习Android开发之前,可以先把Java基本语法和Java SE的基础类库好好学习一下,例如:Java中的IO、网络、线程、List、Map、Tree等数据结构。现在的大学里也有不少的院系开设了Java课程,教材和图书也非常丰富,如果你所在的院系没有开设,也可以从其他开设了这个专业的院系同学那里借阅一下,并认真完成他们所布置的作业,争取自己能动手编写出一些简单的Java应用。如果自己购买图书,可以购买《Java核心技术,卷1(原书第8版)》这本图书来学习。

第四,因为在Android中,会用到数据库来存储数据,因此,也可以提前对数据库知识做相关的储备。在Android所使用的SQLite中,其语法是遵循标准的SQL-92语法的(当然和企业级数据库如Oracle等比较,功能上要弱很多),有条件的话,最好也能安装一个数据库来进行实际的操作。从易用性和资料完备性来说,建议大家使用Microsoft SQL Server或者MySQL就可以了。它们都是我们学习数据库的好平台。另外,如果曾经学习过数据库原理或者关系代数,那么,在学习数据库的过程中,也可以再好好地复习一下这些基础知识,对我们理解数据库大有裨益。

Android开发学习方法

最后,我们结合华清远见3G学院的“3G Android系统开发就业培训班课程体系”来谈谈Android开发的学习方法。

Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大。因此,一个好的学习方法对我们学习Android开发很重要。因此在华清远见的课程体系设计中采取了循序渐进、将大目标分解成多个小目标,逐步达成对Android开发从应用层到底层系统及驱动开发全面掌握的目的。例如,可以先从Android的应用开发开始,等到对应用掌握的比较熟悉了,开始慢慢阅读一些Android 应用框架层的源代码,然后再渐渐往下去了解Android的JNI、Libraries、Dalvik虚拟机、HAL层、硬件驱动、Linux内核、ARM技术体系架构等,虽然近期Intel宣称要让Intel芯片支持Android系统,但在可预见的时期内,在移动设备上,ARM的优势应该还是不可撼动的。具体来说,可以先通过在开发板上构建一个自己的Android系统,了解Android系统的整体架构和启动过程,由此先对Android有一个初步的了解;接下来,学习Android的应用开发,在这里可以先学习Android的几个主要组件、UI组件,先对Android应用开发有一个感性认识。在能够熟练搭建用户界面后,再逐渐来丰富应用的功能,例如:加上事件处理,使其能够和用户互动;加上数据存储功能;加上联网功能等等。在学完应用后,在此基础上来学习游戏编程,先了解游戏设计的基本思路,然后开始从小的游戏、小的模块开始做起,到最后能完成一个类似于现在热门的《捕鱼达人》这样的游戏。在掌握了这些应用层级的内容后,可以去了解如何在Android应用中通过JNI去调用C/C++的接口,再往下学习Linux的内核和驱动开发如字符设备驱动、Flash设备驱动、网络设备驱动等等;再在此基础上,去学习Android驱动开发、HAL(硬件抽象层)开发、ARM体系架构和指令等等内容,这样,Android开发的整个体系就都贯穿起来了。当然,因为时间有限,而底层部分的内容比较庞杂,因此,在真正去做这部分工作之前,我们只需要对其基本原理有所了解,做好相关知识的储备,能够根据老师的指导来完成相关的实验。这样在后续的工作中,就可以方便的往这方面发展,让自己的事业更上一层楼。

华清远见专家解读Android开发者的前景相关推荐

  1. 华清远见专家解读Android开发者成长之路

    http://www.eoeandroid.com/industry/2012/0221/691.html 导读: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内 ...

  2. 华清远见荣获“华为云精英服务商”资质,助推“华为开发者创新中心”项目落地高校

    近日,华清远见成功通过华为官方认证,荣获"华为云精英服务商"资质,正式代理和服务"华为开发者创新中心"项目.华为技术赋能+华清远见教学实训产品研发+细致服务,全 ...

  3. 华清远见智能家居ppt_怀揣梦想,一路前行——西安华清与西安培华实训集

    2020年9月-10月,华清远见西安中心与西安培华强强联合展开了为期一个月的项目合作. 在华清远见西安中心老师的指导下,培华学子们干劲十足,纷纷动手操作,团队合作,完成了一项项优秀的作品~智能家居.智 ...

  4. “我让这个世界更酷”2022华清远见研发产品发布会圆满成功

    6月18日,"我让这个世界更酷"华清远见2022线上直播新品发布会圆满结束.此次发布会,华清远见教育集团教研副总裁/研发中心总经理刘洪涛老师,在直播现场做了精彩分享,研发中心10余 ...

  5. 2020年回顾 | 华清远见研发中心2020年终盘点

    每个人都在做2020年的总结,我们也来一篇,盘点下这一年我们的收获! 也衷心祝福2021,我们的国家:山河锦绣 国泰民安:我们的人民:和顺致祥 幸福美满! 2020年,新冠疫情肆虐全球的一年,所有行业 ...

  6. 华清远见嵌入式开发学习的6大阶段

    分享一下华清远见嵌入式开发学习的6大阶段.19年嵌入式培训经验,值得一看. 第一阶段:嵌入式系统开发基础理论 阶段目标 掌握Linux操作系统的使用,精通使用C语言编程,熟练掌握嵌入式Linux的开发 ...

  7. 华清远见创客学院_有远见的未来,并通过数据改变学院

    华清远见创客学院 Today is August 26, and undergraduate and graduate students, staff, teachers, professors, w ...

  8. 华清远见星创客:未来智造者

    在移动互联网.智能硬件.物联网等新兴技术飞速发展的今天,嵌入式技术无孔不入.而嵌入式开发人才也因其市场需求大.缺口多.薪资高等特点,吸引着越来越多的高校应往届毕业生走上这条技术之路. 由于目前高校人才 ...

  9. 华清远见星创客·大咖来探班干货风暴再次来袭!全网直播

    星创客·大咖来探班活动即将迎来第三期,在前几期强烈影响下,不少嵌入式开发者纷纷在官网留言要求:"能否在网络上直播该活动?我们不要看录播!"既然如此,华清远见决定第三期活动,将采用映 ...

最新文章

  1. 星际2虫王iA加入商汤,担任AI研究员,网友:iA vs AI ,是自己训练跟自己打吗?...
  2. 远程连接MySQL数据库失败
  3. 会计信息质量要求有哪些?
  4. Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column
  5. 关于数据分析:你想知道的都在这里!
  6. 3-5:HTTP协议之Cookie和Session
  7. python中 yield 的用法详解——最简单,最清晰的解释(排序节省内存消耗)
  8. 银行大数据风控平台的建设要点与应用
  9. 蓝桥杯:试题 历届真题 修改数组【第十届】【省赛】【研究生组】Java实现
  10. 【Spring源码】Spring Transactional事务:传播机制(Propagation) 介绍 和 源码剖析
  11. 【BAPC 2017】Hoarse Horses【欧拉平面图公式】
  12. TFTP服务器的搭建与使用
  13. 成功解决生意参谋中transit-id和加密数据date
  14. vue-element-template模板添加登录页面自定义背景
  15. 《论个人在历史上的作用》总结反思
  16. 【MySQL(七)】脏页
  17. 天津大学仁爱学院2014计算机系毕业晚会,天津大学仁爱学院什么专业好
  18. 《这本书能让你睡得好》 阅读笔记与思考
  19. 漫谈测试成长之探索——测试排期
  20. Unity3D开发之3D按钮的声音播放

热门文章

  1. 【从零单排HBase 02】全面认识HBase架构(建议收藏)
  2. LOL峡谷之巅前500爬取
  3. capslock亮灯是小写_Caps Lock Indicator-大小写指示灯锁定工具下载 v1.2.0.21 官方版 - 安下载...
  4. QPM 性能监控组件总篇
  5. Vuex是什么?以及 和本地存储localstorage的区别
  6. 双目视觉三维重建点云分层,断层、放射,散射,锥形
  7. wireguard协议分析
  8. 云澈找到了鸿蒙生死印了吗,逆天邪神:绯红劫难前再遭黑手,云澈身陷外混沌生死未卜!...
  9. python-课后作业-3
  10. CAS开启Rest服务(包括5.x / 4.x / 3.x版本)