“2019年技术没有成长,我今年一定要好好努力学习!”
“在现在这个公司都工作了3年了,一毛钱工资都没有涨…”
“年前真倒霉,老板嫌我工资高,被优化了,年后又遇到了疫情,现在都还没有找到合适的工作。”
“想一边工作,一边找工作,但是,哎,要么简历石沉大海,要么,问几个问题就结束了…”
“刚找到一个工作,这工资比我现在的也高不了多少,去还是不去呢?”
“工作这么多年了,感觉技术就是这样子,这几年时间白白浪费了”
“越想越觉得自己的干这个技术没有出路,我该怎么办啊,换行业吗,还是继续干,不干我又能干什么呢?”
经常能听到一些Android同僚发出这样的言论,很多人都对自己的职业和未来感觉迷茫,想要学习提升自己,但是又不知道该如何去学习,或者沉不下心来学习。
既然选择了Android,就注定要不断学习新技术,没技术、没能力还不学习,被淘汰的时候怨不得别人。
我有两点建议:
1、横向发展:(适合有自己专精技术的人)
在自己擅长领域深入钻研的同时,会Hybrid开发(Flutter,RN,H5)之外,还要会web开发、微信小程序。但是,这确实比较难,全栈容易发展成全菜,啥都知道,啥都不精。
2、纵向发展:(适合大多数人)
如果做应用开发,就往应用架构方向发展;如果做系统层开发,就钻研底层驱动。
可以从以下这些方面进行学习:
移动架构:
架构展示层:MVC、MVP、MVVM、Android Architecture Components;
架构层:模块化->组件化->插件化->沙盒/双开技术;
基础进阶:
比如高级自定义View、Android Framework层原理, App 管理机制等等;
JNI 和 NDK 开发也是比较常见,5G来了,招聘单位都在给自己公司规划小视频功能,然而我们却连NDK都不懂;
学习开发语言:
比如Kotlin,做底层C/C++是必不可少的,还有一个最容易忽略的 Java语言本身的高级面向对象思想;
源码:
看懂并且熟悉源码,熟悉其实现原理,争取做到能自己二次封装三方库。
学习方向很容易规划,但是如果只通过碎片化的学习,对自己的提升是很慢的。比如可以助力app百倍的热修复技术,近年来得到了飞速发展,尤其是在Instant Run方案推出后,各种热修复技术百花齐放,各大厂商纷纷推出了自己的热修复技术,像微信,QQ,支付宝,手淘,饿了么/美团等等。但是市场上深入系统的讲解热修复技术细节的博客和书籍几乎没有,即使有很多开源的热修复方案,也很难全面快速地理解热修复技术的难点和关键点。
还有一个提升方法:搭建自己的知识学习框架,我们在刚开始学习安卓的时候,如果没有注重搭建知识框架的话,学到后期的话你就会遇到一个问题,就是会感觉到自己之前学习的知识很乱,不成系统,再加上越往后自己学习的知识会越来越多,而之前的学习又是零散的自己没有整理的,你就会感觉自己所掌握的这些知识是散乱的。
知识框架就像一座房屋的整体架构,大致模型如此,然后按照这个模型去添砖加瓦,至于最后出来的效果如何,就看你如何添砖加瓦了,以后如何装修了,但是无论怎样,这个整体架构必须有的,它是一个前提。
可以在最开始的时候先搭建一个大概的框架,不需要太详细,一个大概的思路方向就可以了,比如:
有了一个学习的方向,之后的学习就不会是迷茫散乱没效果的,所以在刚开始自学安卓的时候一定要先搭建知识框架!
那么我们该怎么去搭建这个知识框架呢?
具体的框架搭建可以参考下这篇文章:不会搭建Android知识框架,活该你成不了技术大牛!
对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!
最后,我再重复一次,如果你想成为一个优秀的 Android 开发人员,请集中精力,对基础和重要的事情做深度研究。
对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
Android架构师之路很漫长,一起共勉吧!