您的位置:首页 > 移动开发 > Android开发

Android进阶之路指引

2016-05-11 15:44 183 查看

一、精深

首先说一下精深,作为Android程序员,所必需掌握的基础知识:

1. Java核心编程

Android的开发语言是Java,所以Java是作为一名Android程序员所必须掌握的。

我这里推荐几本书,Think in Java(Java编程思想)、Core Java(Java核心技术)、Effective Java,看过这三本书,你的Java技术就相当有保障了。

2. Android基础知识

Android四大组件及生命周期

Layout布局方式

各种控件的使用方式

Activity间传值、Activity与Fragment间传值

不同分辨率的界面适配

事件及回调机制

本地数据存储

HTTP访问网络

Widget的使用

针对各个Android版本的适配

3. 进阶

adb命令的使用

Activity、Service、Broadcaster互相调用

通知栏Notification的使用

Alarm的使用

SMS的使用

线程的使用

Handler消息机制

AsyncTask异步调用机制

Intent、Intent-filter的使用

使用自定义style、theme、drawable等方式美化界面

动画效果的使用

硬件调用,摄像头、录音、录像、地理位置

APP版本升级、本地数据库版本升级

音频、视频处理

自定义布局、界面

WebView的使用以及WebView和本地代码间通讯

各种第三方类库的使用

各种第三方平台的使用

4. 高阶

2D/3D图形应用

传感器的使用

蓝牙、NFC等的使用

性能优化

NDK的使用

Framework层修改

自定义ROM

适配Android系统到不同的硬件设备

个人认为:

基础阶段可以制作出能用的功能简单的APP、这是一个普通开发人员所必须掌握的;

进阶阶段可以制作出好用的能吸引人的APP、这是一个技术负责人所必须掌握的;

高阶阶段则可以制作出MIUI这样的系统级别的框架了;更可以进军眼下火热的智能家居、智能眼镜行业了。这是一个技术总监所应具有的素质。

二、扩展

如果你要是想走广博这条路,那么会有很多新奇的、好玩的技术等着你。

但是首先,你要达到Android进阶水准,否则就不要自称是Android程序员了。

当你达到了进阶水准后,你的兴趣可能就不仅仅止于Android,可能你对iOS有兴趣,对服务端开发有兴趣,对Web开发有兴趣,对HTML5开发有兴趣,对设计有兴趣,对游戏开发有兴趣,等等等等,我这里对每一个方面都做一些简单介绍吧。

iOS:

iOS和Android就是一对儿双胞胎,很多人在做了一段时间的Android开发后,或者做了一段时间的iOS开发后,都想学学对方的技术。

个人认为iOS的学习曲线较Android要高,学习成本也较大,苹果三件套是必备的,不过iOS开发真的很火呀,而且开发出来的APP美观度比Android不知道高到哪里去了。

服务端:

Android APP是客户端,那么对于大多数的APP来说,是需要服务端提供服务、数据之类的,那么现今流行的服务端有哪些语言呢?

首推Java,Java的框架多呀,开发快呀,资料多呀,像SSH、Spring MVC、Jfinal、ofBiz呀,这些都是很流行的框架,我这里推荐Jfinal,典型的快速开发框架。

其他像Python的Django、Ruby on Rails、ThinkPhp等都是动态语言Web框架的经典,可以根据各自兴趣着重学习一种。

最不推荐的就是.Net,虽然VS很强大,WebService也很不错,但是个人认为不像Java那么规范,也不像动态语言那么快速,最不喜欢.Net框架,个人偏好而已。

前端:

我把前端技术定义为HTML(5)、CSS(3)、JS等这些技术的合并体,网页所最终呈现出来的效果都是由我们的前端工程师完成的。

而且现在有非常多的前端框架,像Bootstrap、JQuery UI、Semantic UI、NEJ、Pure UI、Amaze UI等等,都是现在很流行的框架,大家可以学习学习。

设计:

我认为的设计分为交互设计、视觉设计,

视觉设计肯定要掌握Photoshop之类的设计工具,并且有一定的美感(这个就仁者见仁了),

交互设计是现在设计中很需要强调的一部分,很多网站、APP外观看起来也不错,但是实际使用就感觉有些别扭,不尽如人意,那就是交互设计有缺陷。

一个经典问题:弹出框的[确定][取消]按钮,iOS默认确定在右,Android默认确定在左,那么如果你是一个交互设计师,你的APP需要同时在两个平台发布,这个按钮你应该如何设计呢?

游戏:

现在游戏也是多种多样,页游、端游、手游一波一波的,我这里只对手游有过了解,所以只说说这一部分。

手游现在国内最火的框架就是cocos2d了,支持多种平台,而且有很多的资源可以参考;

另外像Unity、OGEngine、AndEngine、LGame、也都是不错框架。

等你掌握了以上这些技术之后,你就是一个典型的全栈工程师了,从设计到开发到运营你都可以胜任,这个时候,你就可以跟老板说:我可以干五个人的活,只要三个人的工资了。

更可以在家Soho了,作为自由职业者,或者创业也都是不错的选择的。

选择一条路,走自己的路,让别人说去吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: