一、Android开发的分类:
1、Android客户端应用程序
如新浪微博、网银客户端、凡客、淘宝客户端,快盘客户端。从应用需求上来讲,几乎大一点的网站,都需要有手机客户端程序。
2、Android通用类程序
如基于LBS(基于位置的服务)的应用 (这类一般会嵌入到客户端应用程序中),流媒体播放应用。由于移动设备的方便便捷、3G、4G网络的发展,
这类应用有不错的前景。
3、Android游戏开发
需要掌握的游戏引擎LGame,游戏框架等。手机上的游戏会是一大块内容,有前途。
4、Android底层开发
需要掌握C、Linux等较底层的东西,发展方向应该是驱动、协议开发,嵌入式开发。
成为Android高手一般分为六个阶段:
第一阶段:熟练掌握Java SE,尤其是对其内部类、线程、并发、网络编程等需要深入研究;熟练掌握基于HTTP协议的编程,清楚POST和GET等请求方式流程和细节;
能够进行基本的Java Web编程,如果能够使用Java EE则更好;
第二阶段:精通Android的核心API的使用,例如四大组件所涉及的API、Context等,精通核心界面的编程,例如ListView的编程;到达这个阶段已经能够做大部分
基本的应用开发了;
第三阶段:精通应用框架的原理,尤其是对IoC的理解及其在Android应用框架中的应用,精通基本的23种设计模式在Android中的应用;
第四阶段:精通JNI,熟练Android类库中C/C++组件开发;并能够使用JNI机制把现有的C/C++组件移植成为应用框架的核心组件;具备修改和编写自己的
应用框架的能力;
第五阶段:做出自己的Android系统,无论是底层还是上层都能够了如指掌;能够根据实际需要设计和实现比较大Android系统,例如带领比较大的团队
做出自己的Android手机产品等;
从本质上来说,Android的应用程序有两种:客户端应用程序和WEB应用程序。开发客户端的应用程序,主要需要学习Android sdk;开发WEB应用程序主要需要学习WEB标准技术。事实,对于有一定的Java和WEB开发经验的人来说,在移动互联网的时代里,我们不会将界限划的那么清晰,两者的结合才是我们孜孜以求的。但是,无论我们做什么,用“心”都是最重要的。创“心”,创造一个让用户满意,让用户有好的体验的,让用户“心”里舒服的产品,“心”里高兴的,高质量的产品才是最重要的。
客户端应用程序:客户端应用程序简称客户端(Client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行。因特网发展以后,较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等,这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。
WEB应用程序:所谓Web 应用程序是一种可以通过Web访问的应用程序。Web应用程序的一个最大好处是用户很容易访问应用程序。用户只需要有浏览器即可,不需要再安装其他软件。它是典型的浏览器/服务器架构的产物。应用程序有两种模式C/S、B/S。C/S是客户端/服务器端程序,也就是说这类程序一般独立运行。而B/S就是浏览器端/服务器端应用程序,这类应用程序一般借助IE等浏览器来运行。WEB应用程序一般是B/S模式。