怎样成为一名Android开发者
导读:从事Android开发给我带来的收入甚至远没有达到iPhone开发人员的水平。 但不管怎么说,从事Android开发是非常有前途的,特别是对于新的应用点子有很大的发展空间。
我应该熟练的掌握JAVA——事实并非如此!
有很多专家都会非常严肃的说:“你必须要熟练的掌握Java,否则您做梦都不要期望成为一名Android开发者!”。 以我的情况来看,事实并非如此,我仅仅只是对于PHP非常熟练。 至于Java,我一直计划着在空余时间好好的学习它,但是我几乎没有空闲时间,所以我只只是略知皮毛。虽然我购买了《 Thinking in Java 》,但不幸的是到目前为止我还没有看完第三章。 所以,非常基本的Java的基础知识,这就是你所需要的!
我必须先熟练的掌握一种IDE(Eclipse或NetBeans)——这也是错误的!
另外,专家们还会说会说:“你必须要先完美的掌握一种IDE,否则在学习一门新的语言之前你便会掉队!”。专家们总是这么耸人听闻,看来,我不是真正的专家。因为我是在学习 Java Dalvik ( Android apps开发语言) 的同时才开始使用IDE(Eclipse)的。 所以,事实是你只需要在需要使用的时候再开始学习它,而那些IDE专家撰写的有关书籍在大多数情况下是浪费时间和金钱。
我需要拥有一台基于Android的手机——这(再一次)是错误的!
如果你拥有一台Android手机,那当然最好。甚至,你最好能够几台不同系统版本的Android手机来测试你的应用——如果你准备让他们在所有的Android设备中正常工作! 但是事实上这并不能解决所有的问题。 虽然一台真正的Android手机有利于你测试自己的应用程序,但在大多数情况下Android模拟器(包含在Android SDK中)便已经足够了。
那么什么是你真正需要的?
在我看来,想要成为一名真正的Android开发者,你需要拥有这些东西:
Java基本知识(或任何其他面向对象语言)
免费下载的Android SDK(包含Android模拟器)
免费的IDE (例如Eclipse)
免费的Android文档
还有一些并不是必要的,但可能非常有用的东西:
一部Android手机(我的选择是HTC Desire )
一本不错的Android开发入门书籍(我买了两本让我非常满意的书籍——《Hello, Android 》和 《Beginning Android 2》
所以,如果你真的想成为一名Android开发者——不要被砖家吓到。只要你肯努力学习它,你会惊奇地发现它是那么的容易!
(装载)原文地址为:http://www.mars-droid.com/?m=201103
很多朋友都对学习路线问题感到迷茫,特别是还在上学的朋友们。在这里就详细的为大家介绍一下。
1.Java基础
很多朋友一上手就开始学习Android,似乎太着急了一些。Android应用程序开发是以Java语言为基础的,所以没有扎实的Java基础知识,只是机械的照抄别人的代码,是没有任何意义的。那么Java学到什么程度才算是过关呢?我个人认为至少要掌握以下两个方面的内容:
a) Java基础语法:具体的知识点列表可以在这里下载:《Java知识点列表》V1.0。这部分内容没有讨价还价的余地,必须烂熟于胸。至于具体的学习方法,可以看书或者是看视频,但是关键是要多加练习,无论是书上的练习还是视频里面的练习,都需要仔仔细细的完成;
b)设计模式:由于在Android系统的框架层当中,使用了大量的设计模式,如果没有这个方面的知识,对于Android的理解就会大打折扣。设计模式的种类非常之多,一个一个的全部掌握,是不现实的,必须首先掌握面向对象的基础设计原则,有了这些基础原则的支持,就可以举一反三。这部分内容可以在《Effective Java》和《Agile.Software.Development:Principles,Patterns.and.Practices》这两本书中找到。
2.Linux基础知识
大家都知道,Android系统的基础是Linux操作系统。在开发过程当中,我们也需要使用到一些Linux命令。所以说一些Linux的基础知识是必须的(话说现在的程序员,不懂Linux都不好意思跟人家打招呼),推荐大家看看《鸟哥的私房菜》这本书,写的相当不错;
3.数据库基础知识
这个比较简单,就是一个增删改查的数据库操作,可以看一下这本书:《SQL编程练习与解答》
4.网络协议
至少需要学习两种基础的协议,HTTP协议与Socket协议;
5.Android基础知识
有了以上的铺垫,再来看Android,是不是觉得轻松了很多呢?至于基础知识的学习顺序,最好的方法就是按照Android SDK帮助文档当中的Dev Guide里面的顺序,我的《Android视频教程》也基本上是按照这个顺序录制的;
6.服务器端开发知识
由于很多Android应用程序都需要服务器端的支持,所以掌握一些服务器端开发知识还是非常有必要的。至于选择哪一种服务器端知识进行学习,就比较麻烦了,因为技术的种类实在是太多了:
a)Java EE:就是上面邮件当中所提到的SSH—Struts+Spring+Hibernate。这种技术的优点的功能完整、强大,已经使用了很多年,而且既然大家已经非常熟悉Java了,那么学习SSH看起来也顺理成章。但是使用这种技术开发服务器端程序,非常麻烦。即使是一些简单的功能,也可能需要大量的代码和配置文件来实现;
b)PHP:简单易学,开发快速。但是我们需要多学一种语言,是否得不偿失,就要大家自己判断了;
c).NET:这项技术的特点和Java EE差不多,但是要想掌握.NET,则需要掌握c#,也是个麻烦的事情;
d)ruby on rails:这是我个人最喜欢的服务器端技术,简洁,优雅,寥寥几行代码,就可以实现很复杂的功能,但是这需要Ruby语言知识作为基础;
至于选择哪一种技术,就看大家自己的判断了。
要成为一个专业的Android开发者,以上的这些知识都必不可少。看起来好像很多,多的可怕。所以还是那句话--“耐心,耐心很重要”。