总结:
各行各样都会淘汰一些能力差的,不仅仅是IT这个行业,所以,不要被程序猿是吃青春饭等等这类话题所吓倒,也不要觉得,找到一份工作,就享受安逸的生活,你在安逸的同时,别人正在奋力的向前跑,这样与别人的差距也就会越来越遥远,加油,希望,我们每一个人,成为更好的自己。
-
BAT大厂面试题、独家面试工具包,
-
资料包括 数据结构、Kotlin、计算机网络、Framework源码、数据结构与算法、小程序、NDK、Flutter,
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
技术不过硬,就算转去Java、大数据、人工智能,还是会问出类似的问题:
“Java凉了?Java前景如何?”
“大数据凉了?大数据前景如何?”
“人工智能凉了?人工智能前景如何?”
……
Android 在移动端占有率非常高对不对,ios 占有率比android少太多了吧,移动端市场基本就这两大平台了。那为什么还是很多人不建议学Android呢?好像是个悖论呢?
这里先聊聊第一个问题,就是Android开发的需求量,虽然Android占有率非常高,但是对于开发岗位来说。一般情况下开发一个Android app 基本都对应一个ios的版本。那么其实占有率再高对于开发的需求量可能基本持平。
然后,android 开发进入了一个平稳期。而不是过去的上升期,过去可能10w个开发者却有100w个岗位需求,而现在基本不会再出现这样的情况了,而是有100w个开发者可能需求量却达不到了,需求少了,那么进入这个领域,确实不是个好的选择。
但是就算是JavaEE 平台可能岗位更多,但是人才也会更多,所有的行业基本都会再平稳期继续发育下去,但是被颠覆的可能性说所有平台都会遇到的,所以这个不能用来针对android。
其实从Boss上的招聘岗位薪资来看还是比较高的,薪资基本都在20K左右。
那么应不应该继续从事Android 开发?学习Android呢?
其实不管你怎么选择,到了一定的阶段都会有遇到困惑。有的是刚毕业从事这行找不到工作的窘境,有的是从事这行感觉自己没有什么提升空间的困境等。
你要明白的一个东西叫“核心竞争力”。不管你在那个行业,那个岗位,都要知道如何在竞争中,一直处于一个领先状态,而不是被动的。
现实中并不是这样,作为一名有经验有能力的开发者,去一些招聘平台找工作搜索时,你可以发现你想应聘的岗位每天都有在招人,是没有人去应聘吗?
并不是这样,而是他们一直找不合适满意的人才。
这个行业就是这样,并不是人才需求量少,相反的就是很稀缺,但稀缺的是那种真的有实力胜任的高级工程师。
你真的觉得你能胜任那些工作么?
我不确定现在的开发者有多人还在纠结kotlin 要不要学?
我也不确定,多少人连jetpack 是什么都不知道
但是我知道,很多程序员连MVP / MVVM 都没有弄明白
如果你问我不会这些就不能做android了?是不是有点危言耸听了?
那么你一定要明白一个道理,就是如果想继续学android ,学再这个行业立足,就一定要用心的去想明白,如何学,为什么学,学什么,学到什么程度,如果这些都没有想明白,你能把这些做好吗?
下面我推荐给大家一份《Android 中高级进阶的成长曲线图》,里面记录的大多是现在市场上比较主流的一些技术,从0到1的一个引导,内容有 Framework、Flutter、kotlin、NDK、Gradle、性能优化、移动架构、UI进阶、音视频等技术。请看下图:
由于成长曲线图记录内容较多,可能导致图片清晰度有所下降,如过有想参考高清完整版学习,可以直去GitHub 地址:https://codechina.csdn.net/u012165769/Android-T3/-/blob/master/README.md访问查阅。
android 能不能学,看自己,哪个行业都一样,都需要那种能真正做事的高级工程师,如果你有这个实力,根本不用担心,当年sybian一统天下,被android打败的时候,那些sybian工程师,基本都是现在的android元老,即使android 倒下了,你有这个基础也根部不担心,如果你的实力只是对android一知半解,即使换了个平台也是一样的, 重要的不是 这个平台怎么样,而是你学的怎么样,如果你是大神,即使android倒下了 你一样神大神。而且现在android平台的占有率就是摆在那,有什么担心的呢?未来几年android 也不可能一下子消失,所以,不要纠结android能不能学,市场怎么样。而是要想你真的想再这个方面发展吗?如果不喜欢就选个喜欢的,如果想继续,就把自己变成一个能够再这个行业立足的人。
身为一个Android程序员,想要进大厂,需要掌握的核心技术栈是什么呢?
这里,我列出了6个部分,每个部分都对应Android开发者需要掌握技术点,并加以PDF总结,希望能帮到想要进入大厂的朋友或者正在面试大厂的朋友做一个技术上的储备;
一、 Java基础部分
-
Java序列化
-
Java泛型
-
Java反射
-
Java并发原理
-
线程与多线程
-
线程通信
-
线程池
-
JVM底层源码
-
GC垃圾回收器
-
类加载器
-
内部类
-
接口
-
Hashmap底层框架
-
Hashmap底层源码
-
Arraylist源码分析
二、 Android基础部分
-
Activity启动流程
-
Activity启动模式
-
Activity启动周期
-
Fragment生命周期
-
Fragment通信
-
Service启动模式
-
Service生命周期
-
View事件滑动
-
View事件分发
-
自定义View
-
进程的生命周期
-
多进程
-
进程存活
-
进程保活方案
-
Bitmap配置
-
Bitmap常用操作
-
BitmapFactory
-
屏幕适配(今日头条)方案
-
屏幕适配(刘海屏)方案
-
Handler原理
-
Looper
-
AsyncTask
-
线程池
-
RecyclerView优化方案
-
内存泄漏
三、 Android进阶部分
《设计思想解读开源框架》
第一章、 热修复设计
-
第一节、 AOT/JIT & dexopt 与 dex2oat
-
第二节、 热修复设计之 CLASS_ISPREVERIFIED 问题
-
第三节、热修复设计之热修复原理
-
第四节、Tinker 的集成与使用(自动补丁包生成)
第二章、 插件化框架设计
-
第一节、 Class 文件与 Dex 文件的结构解读
-
第二节、 Android 资源加载机制详解
-
第三节、 四大组件调用原理
-
第四节、 so 文件加载机制
-
第五节、 Android 系统服务实现原理
第三章、 组件化框架设计
-
第一节、阿里巴巴开源路由框——ARouter 原理分析
-
第二节、APT 编译时期自动生成代码&动态类加载
-
第三节、 Java SPI 机制
-
第四节、 AOP&IOC
-
第五节、 手写组件化架构
第四章、图片加载框架
-
第一节、图片加载框架选型
-
第二节、Glide 原理分析
-
第三节、手写图片加载框架实战
第五章、网络访问框架设计
-
第一节、网络通信必备基础
-
第二节、OkHttp 源码解读
-
第三节、Retrofit 源码解析
第六章、 RXJava 响应式编程框架设计
-
第一节、链式调用
-
第二节、 扩展的观察者模式
-
第三节、事件变换设计
-
第四节、Scheduler 线程控制
第七章、 IOC 架构设计
-
第一节、 依赖注入与控制反转
-
第二节、ButterKnife 原理上篇、中篇、下篇
-
第三节、Dagger 架构设计核心解密
第八章、 Android 架构组件 Jetpack
-
第一节、 LiveData 原理
-
第二节、 Navigation 如何解决 tabLayout 问题
-
第三节、 ViewModel 如何感知 View 生命周期及内核原理
-
第四节、 Room 架构方式方法
-
第五节、 dataBinding 为什么能够支持 MVVM
-
第六节、 WorkManager 内核揭秘
-
第七节、 Lifecycles 生命周期
本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
…(img-dCaWffOv-1715900352210)]
本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
[外链图片转存中…(img-FFWoIAr9-1715900352211)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!