总结
作为一名从事Android的开发者,很多人最近都在和我吐槽Android是不是快要凉了?而在我看来这正是市场成熟的表现,所有的市场都是温水煮青蛙,永远会淘汰掉不愿意学习改变,安于现状的那批人,希望所有的人能在大浪淘沙中留下来,因为对于市场的逐渐成熟,平凡并不是我们唯一的答案!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
以前我入职淘宝的title是『资深无线开发工程师』是 P6级别, 那时候 P6还分 高级 与 资深,现在都统一成高级了。
那 P6 的标准到底是什么呢?
其实还挺难说清,这个不像是考试的分数定级那样清晰,到了60分就是及格。
在我的理解里,一句话概括就是:拥有独立负责某个或多个模块的开发工作的能力。(说得再白话一点,就是老板放心你一个人负责某个或多个模块的开发工作)
听着好像还是很抽象,别急,我尝试着把这个能力拆分了一下,包括但不限于:
-
专业能力
-
解决问题的能力
-
学习能力
如果这几项能力达标或突出,我觉得就可以负责多个模块的开发工作了,也意味着进阿里,技术问题不大。
那么我们能怎么去提升自己达到目标呢?限于篇幅,我着重讲怎么提升专业能力。
=====================================================================
计算机专业要学习的内容非常多,专业能力包含很多,光Android还不够,还有比如数据结构、算法、Linux、网络编程、计算机原理等等等等等等,由于我做的是 Android,那么这里就偏向 Android 来讲解了。
===========================================================================
由于开源的精神以及互联网的伟大,我们能够不费吹灰之力使用世界上顶尖的三方库,比如很火的 RxJava、EventBus、Retrofit、OkHttp 、Glide 等等等等。只要添加一行依赖,就能起飞,有一种自己掌握了全世界最牛逼的技术的错觉。
我见过不少人,也看到不少 人的Github 的库里写着 MVP+RxJava+Glide+Dagger 等等类似的内容,他们可能一线开源库用得很六,但是一旦问及原理,可能就一脸茫然,说不太上来。
这其实就是停留在使用阶段的表现。
你要知道,一个库再牛逼,这个牛逼是属于作者的,而不是你。
站在面试官的角度讲,这么多人都会用,又凭什么选你呢?对吧?!
这时候如果你懂一些原理,那你就能比别人更优秀一些了。
那么,怎么去深入理解原理呢?阅读源码!
(退后,我要装 X 了!)
其实所谓的原理,全都写在源码里面,毫无保留。
有的人一听看源码就会慌,不知所措,代码那么多,怎么看啊?
其实阅读源码也是有很多诀窍的,这里分享几点心得:
-
首先要会用。你要知道这个库是干什么的,掌握它基本的使用方法;
-
有目的性。针对某个功能有目的的去挖掘,这样就不会在茫茫源码中迷失方向;
-
不需要看完所有细节。有的人阅读源码爱钻牛角尖,非要把每一个小细节都搞清楚,以至于看了一天可能都没看明白主干是什么。
是不是有点道理?比如 EventBus ,你发送个 Event 怎么就传递到了订阅的地方?带着这么个小问题有目的的去看,会轻松很多。
阅读源码确实不简单,但是不要着急,从简单的源码开始,慢慢提升,学会抽丝剥茧,层层递进,逐渐培养阅读源码的习惯与能力。
相信我,学会看源码,对专业能力的提升有巨大的帮助。
============================================================================
在平时保证完成工作的情况下依然要保持学习,做不到每天学习,也要做到每周学习,扩大知识面,加深深度。
技术的发展非常快,要跟上得不断持续的学习,这很重要。
==============================================================================
说实在的,这个时代,已经不缺少学习资料了。但是呢,资料也是有好有坏的,众所周知,你用 google 搜跟 某度 搜到的资料会有很大的差别,所以第一步,把 google 作为默认搜索引擎。
官方资料 跟别人的二手资料,差别也是很大的。
这里不是说所有别人写的资料都是差的都是不值得看的,而是说其实别人可能也是看了官方的资料,经过自己的理解加工输出一个资料,而这个加工过程可能删减了部分内容,也可能扭曲/误解了官方的意思,以至于你看到的时候可能变了味。
所要尽量去看一手资料,它能让你学到最基本、最全面、也是最有用的知识,更何况,现在 Android 官方的文档 视频 越做越好,甚至都做了中文翻译,还有什么借口不看?
===========================================================================
前面我既让你看官方的资料,又让你去看源码,那么光看就够了吗?
显然不是,纸上得来终觉浅。
学习,要做到有输入有输出,这样才能更好地把知识掌握在脑子里。
最后我还整理了很多Android中高级的PDF技术文档。以及一些大厂面试真题解析文档。
Android高级架构师之路很漫长,一起共勉吧!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
止,不再深入研究,那么很难做到真正的技术提升。**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!