前言
我经常会收到同行网友提问:
我17年毕业,做了3-4年安卓开发,13k的工资。编程就不是我喜欢的工作,感觉就是青春饭,每天对着代码就觉得好压抑。
做了两年多的安卓,突然想转Java后端,感觉android现在慢慢成熟了,职业前景不太好,转还是不转?
本人三年android开发,感觉Android没什么前途了,有什么好的学习方向求推荐?
大专毕业工作,是继续做android开发还是应该考虑转行学其他方向?
…
Android 开发工程师想转行,有什么建议?
每个从事IT行业人都不容易,不管你从事Java还是前端,亦或者大数据与Python,兴盛与衰落,都是一样的不容易,没有谁的工作一帆风顺,风平浪静的。无不是三十年河东三十年河西。我想如果有,那只有少数几种人,比如退休的人,因为TA只要往家里一躺,万事休,等待与世长辞,再无任何瓜葛。
我想我们Android开发应该都还是想选择做多折腾的那些人的吧,因为那些技术差的或者还没入坑的,他们也应该是想做一个Android开发,但却没有太多机会了。因为他们也还想多看看这个机会主义的世界,看一看其它行业的繁华,选择一个热门行业,一起做风口上的猪。毕竟在这个物欲社会,尽早实现财富自由比什么都重要!
所以就算我们的行业再如何的小众,我们都默默的在坚持着,因为只有坚持,我们才能够撑起生活的全部,那些柴米油盐酱醋茶,那些生活中所需要的一切开销,都是我们默默坚持挣回来的,只有坚持折腾的人生,才能够配得上活在这个繁华的世间,才可以看尽世间一世的美好。
分享读者
我2013年java转到Android开发,在小厂待过,也去过华为,OPPO等大厂待过,18年5月份进了腾讯一直折腾到现在。
被人面试过,也面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长,而且极易碰到天花板技术停滞不前!其结果就是对自身产生怀疑,对行业前景开始悲观!
所以,今天,我将献上一份《Android知识图谱》,以自身的经验 & 所见所闻,旨在告诉大家,学习Android,实际上需要学习什么内容,希望你们会喜欢。
核心分析内容
面向Android初、中级开发者,对于要学习的Android理论知识,我认为主要包括:
-
Android基础 & 常用
-
Android进阶
-
与时俱进、热门技术
-
编程语言
-
计算机基础
下面,我将对上面的理论知识逐一介绍。
1. Android基础 & 常用
-
针对Android基础&常用知识,我认为对于初级开发者来说,按照优先级最主要的知识点主要包括:四大组件、布局使用、多线程 & 动画;
-
具体介绍如下:
2. Android进阶
针对Android进阶知识,按照优先级最主要的知识点主要包括:自定义View、性能优化,具体介绍如下:
3. 与时俱进、热门技术
-
除了基础日常使用的
Android
知识,我们还需时刻关注行业动态,与时俱进的学习新技术,如近些年来较为热门的Android
新兴技术包括:Flutter、热修复、插件化等; -
同时,了解 & 学习常用的开源库也十分重要,常用的开源库主要包括图片加载、网络请求、异步处理的开源库,具体类型如下:
以上资源均免费分享给大家,内容均放在了开源项目:【Github】,大家可以自行获取。
4. 编程语言:Java与Java虚拟机
-
Android
是基于Java
的,所以学习Java
和Java
虚拟机(JVM
)十分重要 -
对于学习Java,我们移动端开发学习Java不需要后端那么深入,我认为作为Android开发者,学习的内容包括:语言特性、基础使用、集合类&机制。具体介绍如下:
近年来新兴的
Kotlin
大家也可以了解一下,但我认为短时间内是不会完全取代Java
- 对于
Java
虚拟机(JVM
),属于底层 & 原理性的内容,具体介绍 & 学习的内容包括:
5. 计算机基础
-
除了学习Android特定技术外,对于程序员来说,计算机基础素养也是十分重要,即所有从事技术行业的程序员都该具备的基础知识。
-
计算机基础主要包括:数据结构、算法和计算机网络,具体介绍如下:
以上资源均免费分享给大家,内容均放在了开源项目:【Github】,大家可以自行获取。
6. 额外
-
当你学习完上述知识后,你应该已经能称得算是一个中级Android开发工程师了,可以尝试向高级Android开发工程师进阶。
-
此时,我认为有3个方向可以尝试:技术专家、架构师 & 管理层,具体介绍如下:
7. 总结
我在一线互联网企业工作近十年,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多程序员朋友无法获得正确的资料得到学习提升,故此将并将重要的Android进阶资料包括自定义view、性能优化、MVC与MVP与MVVM三大框架的区别、NDK技术、腾讯、字节跳动、阿里面试题精编汇总、常见源码分析等学习视频免费分享出来。
希望我能够用我的力量帮助更多迷茫、困惑的朋友们,帮助大家在Android开发道路上学习和发展~
上述资源在开源项目:https://github.com/Android-Alvin/Android-LearningNotes 中已提供下载方式,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
在CSDN看到好的文章,而又点赞的人,思想都比一般人豁达!
你的支持!我的动力!