2017最新android学习路线指南

智能手机的不断普及,尤其是由城市包围农村的扩展,上到七八十岁的老人,下到七八岁的孩童都已经用起了智能手机。智能手机的普及也预示着app的普及,android开发工程师也是炙手可热。很多新人小白来询问如何学android,很多朋友不知道如何下手。今天浙江优就业杭州it培训的老师就来做个总结,2017最新android学习路线指南,希望可以帮助大家学好android。成为一名优秀的android开发工程师。

2017最新android学习路线指南

android学习指南

Java基础

首先是学习Java语言基础,很多人不明白,我不是学Android么,怎么又学Java了?你家的房子是用砖头堆出来的,隔壁的小区也是砖头堆出来的,就算是故宫,那还得用砖头呀。当然了,还有很多建筑物不是用砖头的,有的是纯木头建造,有的是玻璃的、钢材的、石头的等等。Java不仅可以用于Android开发,还有其他的开发用途,反之,Android也不是只能用Java开发,其他也行,这个我们下面再讲。

Java的体系很大,但是我们并不需要全部学习,只需要学习Android开发中用到的内容,至于Java相关的其他内容比如Swing、JSP、SpringMVC框架等这些内容我们并不需要学习。

我们需要学习的Java知识有:

Java 基本数据类型

Java 变量类型

Java 修饰符

Java 运算符与表达式

Java 分支:if...else/switch

Java 循环语句:for/while/do...while

Java Array、List、Map、Set、Collection

Java 流(Stream)、文件(File)和IO

Java 异常

Java 继承、接口、抽象类

Java 重写(Override)与重载(Overload)

Java 多态

Java 泛型

Java 线程

Java 面向对象思想

网上关于Java的学习视频有很多,比如马士兵、Mars的都可以,当然这些都是比较老的教程了,不过对于我们学习语言基础并无大碍,反而经典。

当然学习Java之前你还要搭建好Java开发环境,啥,你以为随便写几行代码就能运行吗?不给你地皮,再多的砖头也造不了房子。环境搭建很简单,无非就是安装JDK、配置环境变量,不同的系统略有差异。然后是开发工具,用什么来开发呢?最简单的可以用记事本,通过命令行编译运行,也可以用其他集成开发工具,例如Eclipse。用什么工具无所谓,不会加工资的,主要是学会Java语言基础。

*载下** JDK

*载下** Eclipse

如果你喜欢用记事本的话,那么给你推荐几款编辑器

EditPlus (Windows版)

Notepad (Windows版)

Sublime Text (Windows版) (Mac版)

Android基础

学完Java就可以步入Android的学习环节了,先讲讲Android开发用什么开发工具呢?有人说Eclipse呀,没错,几年前我们确实用Eclipse,通过配置ADT插件,就可以进行Android开发,以后后来Google还出了集成ADT版的Eclipse,更省事,不过这都是几年前了。现在Google已经不再支持Eclipse,推出了自己的开发工具Android Studio(Eclipse可不是Google的,Android是Google的),所以我们Android开发就是使用Android Studio,且Android Studio是最好用的Android开发工具,没有之一。

*载下** Android Studio

我们需要学习的Android知识有:

Android UI组件

Android Dialog、PopupWindow

Android Activity和Fragment

Android 事件机制

Android 绘图和动画

Android 数据存储

Android 广播(Broadcast)和服务(Service)

Android 网络访问

Android 蓝牙及相关硬件开发、多媒体等等

至此,恭喜你,你可以去面试找一份Android开发岗位的工作了,在工作中再去慢慢打磨,一步一步踩坑,做个APP出来是没啥问题的。那么到这就结束了?当然不是,毕竟建个猪圈跟建个东方明珠塔还是有区别的,很多知识是别人教不了的,只有在不断的实践中才能悟出真道理,只需谨记:求知若渴,虚怀若愚。

Android进阶

不能仅限于最基础的开发、控件的基本使用、API的正常调用,很多内容我们只有深入理解之后才能发现新大陆。

深入理解Android事件分发机制

深入理解Android消息机制

擅长View的自定义绘制

理解并能合理运用各类设计模式

熟悉多线程机制

缓存设计

性能优化

阅读和理解源码Android源码

2017最新android学习路线指南

android

Kotlin

为什么又要学习Kotlin呢,不是已经学了Java了吗?在2017年 Google I/O 开发者大会上,Google宣布将Kotlin作为Android官方开发语言。如同Apple推出Swift一样,Kotlin是否会完全取代Java成为Android开发的主流语言,这将由市场一步步验证。作为开发者,我们要做的就是不断提升自己,丰富技能,以应对快速迭代的市场环境。

不建议大家直接学习Kotlin,毕竟目前还没有整体过渡到Kotlin,一切以实际情况为主,还是先把Java学好,并且Java和Kotlin是可以混合使用的。

常用库

在实际开发中,很多时候我们会在项目中使用目前比较成熟的开源库,能够节省大量的开发时间,且这些库有专门的人或团队在维护,比我们自己写可能会更好,何必重复造轮子呢,而且别人的轮子说不定更好。这边我整理了比较常用的开源库供大家参考:

网络请求

OKHttp

Retrofit

Volley

图片加载

UniversalImageLoader

Picasso

Glide

Fresco

时间日期

joda-time

数据库

LitePal

GreenDAO

依赖注入

butterknife

dagger

Log日志

logger

集成第三方SDK

你的项目还可能用到很多第三方SDK,那么就需要熟悉第三方的SDK使用,还好,这不是什么难点,遇到一个攻克一个即可。

混合开发

在不断的探索中,一种很常用的开发方式已经产生,就是混合开发。什么是混合开发?就是在Android项目中插入H5页面,通过Java和JavaScript之间的相互调用,实现页面之间的无缝对接。这种方式有什么好处呢?节省人力、降低维护成本、适配性好,更新方便。

掌握WebView控件的使用

addJavascriptInterface

loadUrl

shouldOverrideUrlLoading

其他

熟悉H5开发的相关内容

Html5

CSS

Javascript

插件化

插件化开发主要利用 Java ClassLoader 的原理,对于 Android 来说是 DexClassLoader,目前也有很多开源框架。

热修复

热修复和插件化属于一个知识体系,Github上也有很多开源项目,列举几个相对热门的:

Github:AndFix

Github:HotFix

Github:Nuwa

NDK

上面都是在说应用层开发,也是绝大多数人可能从事的内容。当然,大家也可以往底层发展,做NDK相关的开发内容,不好意思,本人没有相关经验。

跨平台开发框架

这个其实不完全属于Android开发内容了,应当属于前端范畴,作为补充知识了解一下。所有WebApp框架(一套代码两个包)基本都有以下特点:

使用 Html5 + CSS + JavaScript 开发

丰富的UI组件库

封装大量JavaScript API

提供原生API访问接口

提供硬件访问接口

提供调试、打包等服务

适配性好

如果看到这你还不知道还如何学习Android的话,那么也没关系,世界那么大,为什么非要搞Android呢。

学习更多android技巧请访问浙江优就业官网。