博主参加了2014 CSDN博客之星评选,帮我投一票吧。android
点击给我投票
git
之因此写这篇文章,是由于最近博客和个人开发群( 215680213 )中,很多小伙伴都让我讲讲android学习路线,因此我决定写一篇博客,来讲明这个问题。既然有很多小伙伴来咨询这个问题,说明你们都仍是想快速地提升技术,毕竟技术的提升是职业发展中不可或缺的一步,技术好了,才能获得承认,才能升职加薪。通常来讲,快速提升技术是不太容易的,可是经过正确的方法加上辛勤的汗水是能够缩短这个过程的。或许有人会问,你凭什么来写这个学习路线?你能写好这个技术路线吗?这个还真很差回答,不过我会按个人我的理解去写。这里先说下个人我的状况,个人我的介绍都在博客上面写着,但愿可以给你们一些信心。下面将对技术路线一一展开,这里假设你仍是个android菜鸟,即android初级工程师。github
如今你是初级工程师,可是你想当个高级工程师,因此,你就要给本身定个目标,即:我是要成为高级工程师的男人。有了这个定位,而且努力朝着这个目标去努力,而后心里深处就会有一个感受,这个感受就会成为你的B格,也就是说,虽然我如今是小菜,可是我不是通常的小菜,从而心里有一种自豪感,而这种自豪感会给你提供正能量。这一条是虚的,可是是有用的。设计模式
首先找本android入门的书来看,这个好办,市面上大部分书都是入门的书,要把基本的东西搞懂,在学习的工程中要顺带写点demo,须要注意的是,demo要本身写,哪怕照着书上的抄,也不能直接把书中的demo运行一下。这个是有很大的区别的,代码感受必需要经过敲代码来培养,抄一遍代码和运行一遍demo效果是大相径庭的,这点必定要注意。入门的书看完后,基本就能够上手作一些开发了,好比公司的一些项目啥的。到此,咱们已经成为初级工程师了,这个时间通常1-3个月便可。api
下面说下如何要成为中级工程师:架构
中级工程师这个阶段很重要,通常来讲须要1年左右的开发经验就能达到。首先,要找家靠谱的公司去作android,什么是靠谱的公司,就是在里面能学到东西,能够先不考虑待遇什么的,毕竟技术有了后面待遇也就天然有了。平时在公司要认真作项目,积极主动,一切以学知识为目标,不要图轻松少作项目。同时还要学习公司内部高级工程师、架构师们写的代码,加以理解变为本身的东西。这些都是工做中的经验,除了工做,还须要在业余时间勤奋 学习才能够。业余时间是指非工做时间的其余时间,并且这个时间利用的越多,你的成长之路历程就会越短,你就能越快地提升技术。你们不要小看业余时间,甚至好多状况下,只有工做时间是远远不够的,必须在业余时间也学习才行。那么业余时间如何学习呢?给你们以下几个建议:app
1. 写一个app,好比高仿系列,或者本身作一个app发布也行性能
2. 创建一个博客,csdn或者我的博客都行学习
这一条在个人眼里,是必须的,由于学习讲究总结、融会贯通,而博客恰好能够给咱们一个写总结的地方。时不时把本身的知识汇总下写一篇博客出来,这对本身是一个提升,对别人也是一个帮助。这个怎么说呢,当你写博客,你就会发现一个知识你本身会了和写出来这是不同的,能写出来才是真正地懂了。另外,当你的博客写好了,会有好多人看,这对你也是一个赞扬和激励,让你以为你的辛勤劳动更有价值,这种利人利己的事,是必定要作的。刚开始写点基础的,慢慢就要写点难一点的,这样才能逐步提升。除了写博客,平时也要在心里中多总结、所思考才行,好比能够想一想,android中全部的IPC方式有哪些等。写博客和作开源,对于提升我的知名度颇有做用,而人一旦有了知名度,不少好事就都来了。这里能够阅读我以前写的一篇文章:树立我的品牌:让名企hr们主动来找你。google
3. 创建或者参加开源,好比github
开源的好处就不一样提了,github上各色各样的开源都有,平时你们都是拿来用,可是本身写一个开源给全世界的人用,不是一个很美好的事情吗?建议你们参加开源,由于开源看起来档次比较高。我就有本身的开源,你们能够参看一下:https://github.com/singwhatiwanna。
4.研究android中一些高级的概念、源码等
这个是很重要的,除了量变外,还须要质变。做为一个中级工程师,必须在核心技术上也有所提升,好比aidl、remoteviews、android内部的运行机制等
通过上面几个过程,大概一年时间,android中级工程师就ok了,下面说说如何成为高级工程师:
成为高级工程师就没有太具体了,就是把中级工程师的那几个建议,每一个都作的很好,这个阶段每每须要1-2年或者更多。高级工程师的要求是:熟练掌握android api,理解android的内部运行机制,对view、activity等一些经常使用的android内部运行机制熟练掌握,对常见的android知识点都有涉猎,而且还可以解决一些比较偏门的问题(须要基于android的内部机制),对android的性能调优和适配有认识,代码风格较好而且具备必定的设计模式,在工做上除了技术还要有业务的理解,可以指导初中级工程师,在工做中可以独挡一面。同时在解决问题的能力上达到一个全新的档次,即可以用恰当的手段去解决没法google出来的问题的答案。这个解决问题的能力的档次,这个有点抽象,可是的确很重要,它决定了一我的的档次,具体的须要你们慢慢体会,当技术达到一个档次后,你就能够轻松解决一些疑难杂症。
关于整个周期,从初级到高级大概要2-3年,或者更久。这么说,业余时间利用的越充分,这个周期就会越短,你的我的价值就会越高。虽说起来简单,可是努力的过程是很艰辛的,可是只要你坚持去努力,很快你的生活就会不同,相信这一点,谁都知道要努力才能有所收获,但为何仍是好多人没收获呢,缘由是努力是不容易的,是要花时间的,是比看电影玩游戏要痛苦不少的。不怕别人比咱们聪明,就怕比咱们聪明的人还比咱们努力,好了,你们加油了,花的时间到了,高级工程师天然就有了。最后,再强调下努力的重要性,在一个公司里,周围人的水平都和咱们差很少,要深知脱颖而出的困难程度,从那么多人中脱颖而出是很难的,所以,必定要努力,必定要逼着本身去学习,这样才有可能脱颖而出,请你们必定要有这个意识。