近期遇到很多朋友问及想从事Android开发,有些是大四的学生,有些是已经工作了,从事J2EE或者C++、C#等开发工作。对他们为什么要从事Android我不是很深入的了解,不过Android确实是一个近两年很火爆的热词儿,招聘职位很多,机会多、平均薪水比其他岗位要高一些。移动互联网是未来的一个趋势,越来越多的人开始使用智能手机,Android系统在智能手机领域里虽然用户体验不如IPhone,但价格还是令大多用户可以接受的。国内Android手机的使用者也非常多。希望未来从事Android开发,眼光还是不错的。

Android开发分三类:

1) 驱动开发

2) Android系统开发

3) Android应用开发

每个类别需要的能力是不同的,对于驱动开发,需要熟悉Linux和C语言,了解嵌入式开发相关知识。最好有驱动开发经验;对于Android系统开发,一般是基于Android系统的源码进行修改,修复bug或者对系统进行深度定制,重新设计并实现用户交互,主要是修改Android java层框架和Android系统自带的应用。需要应聘者熟练掌握JAVA语言,有移动开发经验或者J2ME开发经验。前两类的工作一般是手机硬件制造商或者手机设计公司提供这些职位,例如华为、中兴、魅族、联想Lephone。最后一个,Android应用开发这个职位,大部分PC软件或互联网公司已经或正在做Android平台的支持。

做驱动开发,普遍来说待遇比后两类要高些;系统开发,除了魅族、联想这样的公司,如果是做运营商定制的公司,基本上很少对系统层进行深度定制,主要是修改bug。如果没有处理bug的经验,做这一块不只会积累对Android系统层的经验,而且也会积累很多分析问题、解决问题的经验,对于应届生还是很不错的。因为我的需求点不在这个地方,所以我个人并不很喜欢这类的工作,打个比方,我现在的状态,并不希望把一个病人变成正常人,而是希望把一个普通人变成一个明星或者超人,所以我选择系统深度定制或者应用开发。(谷歌开源的Android系统,每个版本都有大量的bug,需要大量的人力去修改bug才能保证正常运行)

入行Android,有两类同学,一类是应届毕业生,没有工作经验的,一类是已经工作一段时间的。因为提问题的大多数同学都是想要从事Android应用开发,我就针对这一类同学给一些建议。

对于应届生和没有JAVA工作经验的人来说而言,我的建议是,首先掌握J2SE,然后再去学Android的应用开发。

学习的方法:看书不如看视频,看视频不如找到好的老师上培训课程,无论看书、看视频、上培训班最重要的都是练习。

当然现在的培训学校大多口碑不好,找个好学校也可能遇到一个不好的老师。我希望有一天我开办一所学校,做到业界第一品牌,不光好学校,都是好老师。更重要的是价格不是最贵的。效果第一,以结果说话。

学习资料推荐:

J2SE方面,看书的话推荐张孝祥老师的《JAVA就业培训教程》、视频也是张孝祥老师的JAVA培训视频,如果经济条件和时间都允许的话可以去培训班学习,培训学校我就不推荐了,一是有做广告嫌疑,二是大家分布在不同的城市,去外地可能不太容易。去找当地口碑较好的吧。再重复一遍,对于大多数人来讲,编程是一项技能,要重复练习。高手拥有的不是高超的技巧,而是扎实的基本功。成功者重复基本动作。

掌握了J2SE方面知识后,可以开始学习Android应用开发了。Android应用开发的书籍推荐《Google Android开发入门与实战》、《Google Android SDK开发范例大全》这两本书,也是高焕堂老师推荐的,我去年有幸参加高焕堂老师的培训,真是如醍醐灌顶,大开眼界,原来做技术的还可以这样。以后有机会跟大家分享下高老师的一些观点。

Android视频方面,网上很多了,我以后也会录制一些视频发给大家看,现在网上的基础讲解已经很多,我不会重复,我会选择一些大家需要而网上较少或者讲解不深入的来讲。

Android培训目前做得好的不多,培训界较有名的传智播客虽然也有,但从大纲上看,还是偏网络方面的多,Android系统本身的特性讲得不是很多很深入。

做Android应用,尤其对没有经验的同学来说,一个企业为什么选择你而不是别人呢?你要制造与其他人的差异,比如你深入的了解某个领域,做出一个应用,面试时带着作品去给面试官演示一下,分享一下做这个项目的经验,但是遇到了哪些问题,怎么解决的,我想在其他方面同等条件下,你胜出的几率高了很多。像我以前面试员工的时候,首先注重的是JAVA基础,分析解决问题的能力,然后是才是Android经验,如果前两方面表现很好的话,Android掌握一般也没关系,我有办法让一个基础好的同学在短时间内快速上手Android。不过这应该是说前两年的情况,以后懂Android的越来越多,门槛也会越来越高。

对于有工作经验的人来说,已经有了编程的感觉,尤其是从事J2EE或J2ME的,转到Android相对容易一些,起码Java语言基础已经有了。只要学习一下Android平台相关知识即可。

Android的语法使用的是Java5.0,是它的一个子集,同时增加了一些apache的包。Android跟J2SE更接近,功能跟J2SE一样强大,与J2ME的差距还是比较大的。只是国内做J2SE的人较少,从J2SE转到Android是最轻松的,因为J2SE中的Swing与Android通过代码来编写UI的方式是很接近的。Swing比Android的UI更复杂,如果你从事Swing或Eclipse RCP或者插件开发等J2SE开发,那么恭喜你,因为谷歌的安卓,你又多了一个选择。

转载于:https://www.cnblogs.com/suiyc/archive/2011/04/24/2059743.html

如何入行Android开发相关推荐

  1. python3.8怎么打开创建_Python3.8有哪些新功能 怎么入行Python开发

    Python3.8有哪些新功能?怎么入行Python开发?近日,Python软件基金会公开了3.8版本的说明文档,向公众展示了beta版本的测试进展,以及Python3.8版本的新特性和功能改进.这些 ...

  2. 入行前端开发需要学什么?有哪些知识点? 程序员的青春

    术掌握到什么程度才可以找工作呢?作为聪明的求学者,总是会带着问题学习,相对于其他后台编程语言来说,Web前端开发确实要更容易学习.但是随着互联网平台的多端发展以及前后端融合技术的要求下,前端开发工程师 ...

  3. wince 开发_大牛总结: 入行嵌入式开发之前,先来看看这个规划

    从事嵌入式开发一年了,有些感想跟大家谈谈.可能很多朋友会像我当初一样,为前途而烦恼,为不知道储备什么知识而苦恼,所以写点东西给这些朋友们提供参考.另外,也可鞭策自己,让自己看到自己的不足,认清以后的发 ...

  4. 我是如何入行嵌入式开发的

    ​从小到大,一直是典型的理科型选手,语文成绩常年徘徊在七十分上下,写作文是最头疼的事,最喜欢做物理题,不喜欢社交,这也许就注定了将来走技术这条路. 小时候家里穷,电子产品接触不多,也就是收音机.电视机 ...

  5. 大牛总结: 入行嵌入式开发之前应该这样规划

    首先IT是一个需要不断学习的行业,没有任何一个行业像我们这样需要不断地接触新东西,学习新知识,如同<学计算机的你伤不起呀>中吼的那样,搞上层开发的,各种编程语言搞死你;搞系统开发的,各种系 ...

  6. 牛人总结: 想入行嵌入式开发?要这样来规划

    从事嵌入式开发一年了,有些感想跟大家谈谈.可能很多朋友会像我当初一样,为前途而烦恼,为不知道储备什么知识而苦恼,所以写点东西给这些朋友们提供参考.另外,也可鞭策自己,让自己看到自己的不足,认清以后的发 ...

  7. 开发转测试没人要_入行或转行软件测试(测试开发)要怎么学

    在2008年刚刚进入这个行业时,我对于要学什么东西,是迷茫的.记得我在08年的时候,入职的公司给我们这批新人做了培训.培训中介绍了很多概念,告诉我们质量很重要,软件测试前景很好,还教了我们很多软件测试 ...

  8. web前端开发论文写作_现在入行 web前端开发 晚了?不看数据你根本不知道这些...

    前端程序员是大家都公认的高薪岗位,那他们的工资到底有没有传说中那么高呢?我们来看看职友集的数据. 数据来源:职友集 就北上广深杭的前端薪资来看,平均薪资均达到一万以上. 通常来讲: 工作1~2年后会成 ...

  9. 年轻人,看你骨骼惊奇,我这有一份来自阿里的Android开发学习指南,不仅能让你月入5w,度过中年危机都不是问题!

    摘要 很简单,我这有一份来自阿里程序员佛系月薪5w指南,看你骨骼惊奇,印堂光亮,一看就是将要大富大贵.走向人生巅峰之人,就不收你钱了,一个点赞就送给你怎么样? 缘起 为什么写下这篇文章? 疫情自爆发以 ...

最新文章

  1. python 获取主机名 根据端口杀死进程
  2. MLP回归,无需卷积、自注意力,纯多层感知机视觉架构媲美CNN、ViT
  3. JVM--字节码执行引擎
  4. 中文文本聚类(切词以及Kmeans聚类)
  5. (二)Java中的HashMap与ConcurrentHashMap的区别
  6. qt opengl 2d绘图效率_Qt趣味开发之打造一个3D名字渲染小工具
  7. 被监控机上安装nagios插件和nrpe(nrpe添加为xinetd服务)
  8. Python机器学习库——Sklearn
  9. java事件轮询_用scala实现的nio事件轮询
  10. catia圆管焊接焊接_CATIA焊接设计实例教程
  11. 基于uA741 PWM发生器
  12. win7计算机启动遇到错误怎么办,W7电脑系统出现Windows错误恢复该怎么办
  13. 重新安装的keil需要的设置-字体颜色固件库中文显示
  14. 【虚拟机装黑苹果(第一弹)】DiskMaker X制作macOS Mojave 10.14.x的U盘启动盘
  15. Ubuntu18.04 无法解析域名
  16. DICOM MPPS 的原理及应用(Principle and Application of DICOM MPPS)
  17. 不值一提的计算机基础教程-0-前言
  18. CSS入门二、美化页面元素
  19. R语言——多元数据直观表示
  20. Python 自动发送QQ端口消息 —— 2022/2/10

热门文章

  1. 状态模式(Strategy Pattern)
  2. 2018-03-02 certtool的用法
  3. 对付洗稿者的一个脑洞
  4. Portal: 西电捷通TISec®技术
  5. 二、bootstrap table 父子表和行列调序
  6. Golang的演化历程
  7. PHP通过字符串调用函数
  8. 计算机一级考试表格题2010,2010年计算机一级考试一级WINDOWS笔试模拟题及答案
  9. Linux 2.6 和安卓一样吗,Linux2.4和Linux2.6设备驱动的一些区别
  10. java.io.IOException: output.properties data exceeds its limit [2048] hue的调度