秋招斩获OPPO意向书,方向是搞 Android Framework,一点顾虑让我选择了放弃(1)

不过说来惭愧,本来学的 Java 后端,结果中大厂能给的面试机会却是 Android/C++后台 /大数据方向,感觉 Java 后台竞争过大,不打算接着找了,

就问问 Android 开发在以后是否有可观的发展空间(面向技术+薪资+未来需求量+万一干不动好不好转型),还不错的话就这么结束秋招

(表示对 Android 开发不太了解,也不知道 Framework 具体是干什么的,但我除了前端啥都可以学)

有很多网友建议还是老生常谈,Android开发前景凉凉。下面我们来看看网友结合自身的一些看法提供的建议。

目前市场上原生 Android 留给新手的坑不多,市面上大部分都是平台级产品,招肯定都是招有工作经验 hold 住的,而且或多或少涉及 NDK、OpenGL、ffmpeg 这些东西,外包项目出于开发成本和跨平台的考虑用 Hybrid、RN、Flutter 的又比较多,需要你 Android、iOS 都有一定经验才 hold 住,否则遇到兼容问题你只能头破血流。

现在做Android,50 年入国军。

将来换工作,Framework 可能比应用层更不好找。

当然这些都是大家各抒己见,发表自己的看法,无论怎么唱衰android开发前景或者Framework,但Android中高端岗位依然缺人。

此外framework 开发虽然比较偏底层,圈子窄,但是能掌握一些原理的东西,可以触类旁通,往应用层发展也可以,接下来我们看看framework知识有多重要。举几个栗子,你或许就能清楚了。

Android Framework 的知识有多重要,广泛的应用在各个领域。像掉帧监控,函数插装,慢函数检测,ANR 监控,启动监控,都需要对 Framework 有比较深入的了解,才能知道怎么去做监控,利用什么机制去监控,函数插桩插到哪里,反射调用该反射哪个类哪个方法哪个属性……

另外 Framework 作为 Android 框架层,为 App 提供了众多 API 去调用 ,但是很多机制都是 Framework 包装好了给 App 来用的,如果不知道这些机制的原理,那么很难去在这基础上做优化。

举个例子,如果你了解 Android App 的启动机制,优化启动速度的时候会更得心应手:定制什么样的 StartingWindow;什么时候可以拿到图片的宽高;DelayLoad 怎么做才会更合适;Service 什么时候启动可以不影响启动速度;Activity onResume 回调的时候真的可见了么?Redex 为什么会加快应用启动速度?

再比如我们经常说的 Handler,MessageQueue,Looper。看源码你就可以更好的理解那些概念:ThreadLocal 做什么的;Thread 和 Handler 的关系;为什么不能在子线程更新 UI?

还有很多栗子,这里就不一一论述学习Android Framework的重要性了。

很多人说客户端已经饱和了,但是我们行内的人看到的是中高级开发仍然是刚需,那些初级或者连初级都不如的甚至是外行当然觉得这行走不下去了,程序员的一个刚需技能就是学习,有学习能力做哪个领域的程序员都可以。移动端也曾出现过风口,别人说现在的风口是前端,但是你能说保证前端会一直在风口吗?我表示怀疑,所以打好基础来应对任何变化才是正路。

如何学习Android Framework


既然Framework这么重要,那我们该如何学习呢?

关于如何学习Android Framework开发知识,最近小编有幸在字节跳动总监手里扒到这份Android framework高级开发笔记,部分知识章节发布到了在知乎上竟然1000+点赞,今天就拿出来分享给大家。

本笔记主要讲解了Framework的主要模块:

第一章: 深入解析Binder

Binder机制作为进程间通信的一种手段,基本上贯穿了andorid框架层的全部。所以首先必须要搞懂的Android Binder的基本通信机制。

本章知识点

  • Binder 系列—开篇

  • Binder Driver 初探

  • Binder Driver 再探

  • Binder 启动 ServiceManager

  • 获取 ServiceManager

  • 注册服务(addService)

  • 获取服务(getService)

  • Framework 层分析

  • 如何使用 Binder

  • 如何使用 AIDL

  • Binder 总结

  • Binder 面试题全解析

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

最后

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

相信它会给大家带来很多收获:

img

当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

  • 无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,这四个字就是我的建议!!!
  • 我希望每一个努力生活的IT工程师,都会得到自己想要的,因为我们很辛苦,我们应得的。

当我们在抱怨环境,抱怨怀才不遇的时候,没有别的原因,一定是你做的还不够好!

龄人。

  • 无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,这四个字就是我的建议!!!
  • 我希望每一个努力生活的IT工程师,都会得到自己想要的,因为我们很辛苦,我们应得的。

当我们在抱怨环境,抱怨怀才不遇的时候,没有别的原因,一定是你做的还不够好!

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

  • 50
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值