• 做了八年的Android开发,谁不是一边崩溃,一边默默坚守!


    前言

    我经常会收到同行网友提问:

    我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的,所以学习JavaJava虚拟机(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看到好的文章,而又点赞的人,思想都比一般人豁达!

    你的支持!我的动力!

  • 相关阅读:
    javascript入门经典(第五版)-清华出版社之“经典”错误
    在自学css开始就遇到问题,“链入外部样式表”在多浏览器显示问题
    sublime text3 =个人插件
    不错的文章
    Golang逃逸分析
    sublime常用快捷键
    同步机制之一--Synchronized,以及此机制下的锁的本质和种类
    UVa 10976
    LeetCode:Add Digits
    插入排序
  • 原文地址:https://www.cnblogs.com/Android-Alvin/p/14370987.html
Copyright © 2020-2023  润新知