Android学习路线

By admin in mobile.365-838.com on 2019年1月11日

全栈工程师,也叫全端工程师,英文Full Stack
developer,是指左右多种技艺,并能利用多种技术独立完成产品的人。

下面的概念,基本上已经相比较直白了,我们再举五个例证就更了然了。


一旦你是一个Web开发者,倘诺您既能做前端(需要熟识HTML、CSS、JavaScript、H5以及Bootstrap、EasyUI等各个

前者框架),又能做后端(需要了解Java或ASP.net或php或Node.js或Go,选项太多就不一一列举了),可以独立一个人完成一个类似电子

一、前言

商务网站的产品的付出,这您就终于全栈工程师了。

无意自己早已做了几年支出了,由记得刚出来工作的时候感觉自己能牛逼,现在记忆起来感觉好无知。懂的越多的时候你才会发现懂的越少。

假如你是一个App开发者,既能开发Android利用(需要熟识Java和Android框架),又能开发iOS应用(需要熟识Objective-C或Swift以及Cocoa
for
iOS),又能够付出使用需要的后台(需要熟练Node.js或Java或Go或……),不言而喻你可以独立一个人支付出一个覆盖Android和iOS的且有业务后台的App,这您也就到底全栈工程师了。

若果您的文化是一个圆,当您的圆越大时,圆外面的世界也就越大。

哦,现在臆度大家真正了然[全栈工程师]是怎么样鬼了。这让我们来看看,固然你想变成全栈工程师,都该了然些什么……比如怎么成为全栈工程师,比如全栈的好与坏,比如采纳哪条技术栈来贯通……

最近见到不少Android新手问Android学习路线,学习情势啊,咋样入门啊,所以自己从网上找了一部分素材,然后以我的干活经验给大家统计一下,让你们少走弯路,提取部分工作中平日选拔的技术。

全栈ABC

二、学习文化汇总

至于全栈工程师,有部分广泛是你必须询问的。

1、Java se基础

对团结产品的期盼

1).Java基本数据类型与表明式,分支循环。

专注,我放在第一位的,不是对技术的热望,而是,[对友好产品的热望]。就像一个男人,渴望要一个友好的男女,99%会采用走“谈对象、结婚、做爱、生娃、养娃”这样一条路。作为一个工程师,假诺你对产品的热望就像这几个思子若狂见了居家男女就想抱走的男人或女性,这您就可能会甘愿成为全栈工程师。

2).String和StringBuffer的使用、正则表明式。

一个着实的全栈工程师,会从生活中窥见问题,洞察需求,设计缓解方案并飞速的贯彻产品。而为了兑现产品,他情愿去学习其他领域的知识和技术。注

3).面向目的的架空,封装,继承,多态,类与目的,对象开始化和回收;构造函数、this关键字、方法和章程的参数传递过程、static关键字、内部类。

意,他们上学某个世界的知识和技术,并不是为着变成那么些世界的学者,而是为了形成自己的目的。他们视野开阔心存高远,不会拘泥于技术,虽然挥一挥手,就有

4).对象实例化过程、方法的覆盖、final关键字、抽象类、接口、继承的助益和缺点剖析;对象的多态性:子类和父类之间的更换、抽象类和接口在多态中的应用、多态带来的利益。

出品、设计、开发蜂拥而至为她们开发想要的成品,这他们丝毫也不介意扔掉所有的技艺。换句话说,唯有在一个人既对成品有迫切的期盼又没人帮她实现时,他才

5).Java非凡处理,分外的建制原理。

会走上全栈之路。所以,全栈,只是实现目的过程中的副产品,目标,才是生死攸关的。

6).常用的设计情势:Singleton、Template、Strategy形式。

形势造全栈

7).JavaAPI介绍:种基本数据类型包装类,System和Runtime类,Date和DateFomat类等。

后边咱们说了,当一个人梦寐以求自己的出品又没人帮她促成时,他一旦不能够放下灼心的渴望,就可能走上全栈之路。这实质上是形势逼迫。这类似的还有其余一种情景,也足以逼着一个人成为全栈工程师。那就是:[投入一个缺人的创业型公司]。

8).Java集合介绍:Collection、Set、List、ArrayList、LinkedList、Hashset、Map、HashMap、Iterator等常用集合类API。

大集团人员奋发,一个萝卜一个坑,个个都是螺丝,让您一个人搞定所有事情的票房价值很小。而小集团、创业型集团则不同,他们多次是人手最为紧张,一个

9).JavaI/O输入输出流:File和FileRandomAccess类,字节流InputStream和OutputStream,字符流
里德(Reade)r和Writer,以及相应实现类,IO性能分析,字节和字符的转发流,包装流的定义,以及常用包装类,总括机编码。

人得顶几个人用。你搞前端的,后端没人你也得顶上。你搞Android开发的,iOS没人你也得顶上,后台没人说不行也得顶上。就这样着,你快速就全栈

10).Java高级特性:反射和泛型。

了。所以,有一种全栈工程师,是被外人养成的。

11).多线程原理:怎么着在程序中创立多线程(Thread、Runnable),线程安全题材,线程的协同,线程之间的报导、死锁。

寻思模式和上学能力

2、android UI编程

部分人,拿刀逼着也失利全栈工程师。有的人,把他扔到没电没网络的万顷,他也得以走上全栈之路。有的人……

1)、Android开发环境搭建:Android介绍,Android开发条件搭建,第一个Android应用程序,Android应用程序目录结构。

那其中的差别,就是思想形式和上学能力。

mobile.365-838.com,2)、Android初级控件的利用:

从思想上讲,要想全栈,你就不可能给自己设限。把团结固定在前端工程师或iOS工程师上,任尔东西南北风,咬定青山不放松。这样是非凡的。应该心随好

TextView控件的施用

猫意纵天高或者鹤舞白沙我心飞翔,综上可得因时而变、因势而变,需要用什么样就学如何,服务器没人搞这自己来搞,Android

Button控件的利用模式

App没人写那我来写……这样打破了我设限,就有着了成为全栈工程师的基础。

EditText控件的使用模式

而外这种自己设限的研商形式需要消除,还有一种永恒要破,这就是融会贯通每一项技术。对于热爱技术的人来讲,搞精每一项技术是很强的引发呀,简直比门口

ImageView的利用方法

度过的妙龄女郎的重力还大。这种考虑要破除,因为把门门技术都了然必然会耗时很长,影响你兑现协调的出品,所以,只要你学到的这部分能够得手帮您兑现目

RadioButton的运用模式

标,这就足以挥一挥衣袖,继续前行了。

Checkbox的应用方法

假诺思(North)维上革除了定点,具备了成为全栈工程师的基本功,假若您有很强的本人学习能力,那就实在可以顺利走上全栈之路了。而只要你读书能力稍差,面对新技巧总是寻寻觅觅寻不到入门的路,这可能也把自己逼不成全栈,或者得逼到白头。

Menu的行使办法

全栈的好与坏

3)、Android高级控件的利用:

全栈工程师的益处就是读书技术很广,可以急速运用他所领悟的技术开发出产品原型。所以,很多全栈工程师后来走上了创业之路,成了创业者;或者进了创业公司,成了技能联合人。他们视野开阔,思维活跃,对技术和成品都很灵动,是创业期不可或缺的主干。

ListView的使用办法

唯独,正因为全栈工程师的技术是横向发展的,广博有余而深邃不足,所以您关系什么,他都能侃上半天,但你要问一些基础的知识点,他恐怕答不上来。假

GridView的应用办法

如全栈工程师不去创业或不参预创业型集团,而是应聘某一个技巧趋势的岗位,那在面试时就会相比吃亏,因为他用到的大多数技术,细问起来,别人或者都会认为

艾达(Ada)pter的利用办法

有询问但不长远。所以,这或者会影响她的求职。然则,若是先一专再多能,然后有察觉的精选对象职业,就足以避免这种情状。

Spinner的拔取办法

接纳哪条技术栈

Gallary的运用方法

额,其实,对于全栈工程师来讲,往往是没得选用的。比如您做App,你要全栈,你基本上就很少选拔余地,Java、Objective-C都是必须

ScrollView的运用情势

的。所以,很多时候是成品和时势接纳你变成全栈,是做着做着成了全栈。而不是为了全栈而全栈,假若是为了全栈而全栈,那你是可以选的啊。比如选用

RecyclerView

MEAN(MongoDB+Express+AngularJS+Node.js),比如J2SE + SSH + Android +

4、对话框与菜单的采取:

Objective-C + Cocoa……

Dialog的基本概念

假如你的目的就是变成全栈工程师,你会意识,哇哦,好多事物要学嗳,吓死人啦。这如若你要做一个出品,比如因为你喜爱炒股,你要做一个大概的股票

BlockquoteAlertDialog的应用办法

App:跟踪自选股行情,帮助自定义提示,界面要痛痛快快干净,平台吗要协助Android、iOS和Web。这你在做这么产品的过程中,就会被逼成全栈而不

DatePickerDialog的应用方法

乐得。因为,做你欣赏的事儿,是不会认为累的。

Menu的运用办法

自定义Menu的贯彻模式

5.控件的布局方法:

线性布局的应用情势

相对布局的选拔办法

6.多Acitivity管理:

AndroidManifest.xml文件的职能

Intent的运用方法

动用Intent传递数据的情势

启动Activity的方法

IntentFilter的使用方法

Activity Group的应用办法

7、自定义控件实现格局:

自定义ListView的实现模式

可折叠ListView的行使方法

自定义艾达pter的落实模式

自定义View的实现格局

动态控件布局的上贯彻情势

上拉刷新下拉加载更多

3、android网络编程与数码存储

1).基于Android平台的HTTP通讯:

Http协议回顾

选择Get方法向服务器交由数据的章程

利用POST方法向服务器交由数据的贯彻格局

运用Http协议落实多线程下载

行使Http协议落实断点续传

2).Android数据存储技术:

SQLite3数据库简介

SQL语句回顾

SQLite3编程接口介绍

SQLite3事务管理

SQLite3游标使用办法

SQLite3性能分析

访问SDCard的方法

访问SharedPreferences的方法

参考自:http://www.cnblogs.com/zhuawang/p/3672228.html

三、进阶之路(初级->中级->高级)

1、初级工程师

小明在此以前完全没接触过Android开发,是个应届生,他的看待是13k,然后小明以校招的身价进入了百度,然后小明需要怎么学习才能成为初级工程
师呢?这些时候,小明对编程基础、数据结构、C语言都有一定基础,Java语法什么的也都控制的相比好,Android才有java语言,无奈的是小明并
不会搞Android。

小明首先需要购买一本Android入门的书籍,为了更快地读书Android,小明业余时间也都用于一边看书一边照着书中的例子敲代码,结果2周
时间小明就把这本书学了两回。看完这本书后,小明对Android的野史、结构、代码规范等都有了一个大体的问询,并且,小明已经可以写出有些简单易行的
Activity了。那多少个时候在小明眼里,Android开发很简短很好玩,通过在xml中摆放一些按钮文本框什么的就能够做一些界面了。

小明先河跟着他的技能导师做需求,一些简短的小需求小明自然是不在话下了。突然有一天来了一个需要,该需求要求小明在Activity中为一个
button加一个卡通效果,小明慌了:“完全没接触过,书上也尚未讲,肿么办呢?”小明冷静了下,打开了百度找寻,输入“Android
动画”,打开前多少个链接,小明出现转机,照着网上的例证把需要给落实了。后来讲师告诉她:“学好Android,官方文档是必须看的,既周全又高于”。然
后小明如获至宝,花了一年时间把地点的guide和training都看了一回,并且她还起头抄了多少个小例子。

有一天,小明又需要做一个动画片相关的需求,这可难不倒小明,它谙习地打开了www.baidu.com,输入“Android
动画”,突然他楞了一下:”总不可能每便写动画都要百度时而吗!“,于是她在CSDN开了一个博客,把动画相关的知识点都写上去,为的是前面再写动画相关的
代码就无须百度去搜了,事实咋样呢?后面再写动画相关的代码,小明的确不用再去百度搜了,因为经过写一篇动画博客,他把动画相关的底细都早就记住了,这样
他就足以毫不再去参考其他文档了,后来小明还学会了把有些零星的不便宜放在博客上的事物写到了回忆笔记下面,何时忘了10分钟以内都足以高速找回来,
而不是花10分钟去重新寻找三遍。

这边总括一下,Android入门的时候,需要有一本入门书,好好学习书中的内容,同时花一年岁月把Android官方文档中的training和
guide看四回,同时通过写博客和记笔记的不二法门来做总计,指出让祥和的每篇博客都有价值些。通过一年时间的就学,相信每个人都得以高达中等工程师的水
平。

技能要求:

– 基本知识点

譬如四大组件怎么样使用、咋样创立Service、怎么着举行布局、简单的自定义View、动画等周边技术

– 书籍推荐

《第一行代码 Android》、《疯狂Android》

2、中级工程师

小明经过一年的努力学习终于成为Android中级工程师了,月薪成为了17k。到了中间工程师,已经足以在店铺里干很多体力活了,可是有些很重点的天职小明还无法一个人肩负起来,这些时候小明需要上学的始末就广大了,如下所示:

– AIDL:熟谙AIDL,领会其行事原理,懂transact和onTransact的区分;

– Binder:从Java层大概领会Binder的工作规律,懂Parcel对象的采用;

– 多进程:熟谙领悟多进程的运行机制,懂Messenger、Socket等;

– 事件分发:弹性滑动、滑动顶牛等;

– 玩转View:View的绘图原理、各样自定义View;

– 动画体系:精晓View动画和属性动画的不同点,懂属性动画的干活原理;

– 懂性能优化、熟识mat等工具

– 懂点常见的设计情势

上学方法

开卷进阶书籍,阅读Android源码,阅读官方文档并尝试自己写相关的技术著作,需要有早晚技巧深度和本身思考。在那个等级的读书过程中,有2个点是相比麻烦我们的,一个是读书源码,另一个是自定义View以及滑动冲突。

何以阅读源码呢?这是个高烧的问题,不过源码必须要读。阅读源码的时候不要浓厚代码细节不可自拔,要关心代码的流水线并尽可能挖掘出对应用层开发有用的
结论。其余仔细阅读源码中对一个类仍然措施的笺注,在看不懂源码时,源码中的注释可以帮您更好地打听源码中的工作规律,这么些过程即使劳碌,但是别无他法。

怎么着玩转自定义View呢?我的提出是不用通过学习自定义view而读书自定义view。为何这么说吗?因为自定义view的品类太多了,各式各类的多姿多彩的自定义效果,怎样学的玩吧!我们要因而现象看本质,更多地去关爱自定义view所需的知识点,这里做如下总括:

– 搞懂view的滑动原理

– 搞懂如何兑现弹性滑动

– 搞懂view的滑行争辨

– 搞懂view的measure、layout和draw

– 然后再深造多少个已部分自定义view的事例

– 最终就足以搞定自定义view了,所谓万变不离其宗

大体再需要1-2年时光,即可直达高级工程师的技术水平。我个人认为通过《Android开发模式探索》和《Android群英传》能够缩短这个过
程为0.5-1年。注意,达到高级工程师的技术水平不代表就足以即时成为高档工程师(受机遇、是否跳槽的熏陶),然而技术达到了,成为高档工程师只是很简
单的事。

技能要求:

– 稍微尖锐的知识点

AIDL、Messenger、Binder、多进程、动画、滑动争辨、自定义View、信息队列等

– 书籍推荐

《Android开发情势探索》、《Android群英传》

3、高级工程师

小明成为了期盼的高档工程师,月薪达到了20k,还得到了一丢丢股票。这一个时候小明的Android水平现已正确了,可是小明的对象是尽人皆知工程师,小明听说资深工程师月薪可以达成30k+。

为了变成Android资深工程师,需要学习的事物就更多了,并且有些并不是那么具体了,如下所示:

– 继续加重精通”稍微尖锐的知识点“中所定义的内容

– 了解系统核心机制:

1. 叩问SystemServer的起步过程

2. 摸底主线程的音讯循环模型

3. 明白AMS和PMS的工作原理

4. 可知回答问题”一个行使存在多少个Window?“

5. 掌握四大组件的光景工作流程

6. …

基本知识点的底细

Activity的开行格局以及分外情形下不同Activity的突显

Service的onBind和onReBind的关联

onServiceDisconnected(ComponentName className)和binderDied()的区别

AsyncTask在不同版本上的显示细节

线程池的细节和参数配置

深谙设计形式,有架构意识学习方法

本条时候已经没有太现实的求学格局了,无非就是看书、看源码和做项目,日常开外总括,尽量将知识融会贯通从而形成一种体系化的觉得。同时这一个等级对
架构是有早晚要求的,架构是虚幻的,然则设计格局是具体的,所以必然要增强下设计情势的读书。关于设计情势的读书,近期一本新书援引给大家《Android
源码设计格局解析与实战》,既可以学学设计格局,又可能体会到Android源码中的设计思想,我近日也在阅读此书。

技巧要求:

– 稍微尖锐的知识点

– 系统核心机制

– 基本知识点的细节

– 设计形式和架构

– 书籍推荐

《Android开发情势探索》、《Android
源码设计情势解析与实战》、《Android内核剖析》

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 mobile.365-838.com 版权所有