实现原理讲解!想给金三银四找工作的程序员几点建议,社招面试心得

起因

事情是这样的。

4年前毕业那会,呆在公司的短视频项目,做 视频。那会做得比抖音还早,但是由于短视频太烧钱了,项目被公司关掉了。当时需要开发横竖屏直播/异步视频的场景,就研究下了市场上的 app,发现输入弹幕的交互并不友好。最直接的体验就是,微信比绝大部分IM软件在聊天场景下输入法与表情面板频繁切换时表现得更为平滑,不会给用户很突兀的闪烁感。但我们除了适配竖屏,们还需要兼容横屏/满屏/沉浸等场景。

摸索了一段时间之后,做出来的效果挺不错,比市面上的直播/异步视频播放场景下的输入交互体验都要好。于是写了个记录的 Blog Android -SystemUI的那点事 。主要是将如何设计横竖屏直/点播场景下良好的输入交互。但是文章并没有写完… 留了横屏模式下使用 PopupWindow 来实现的悬念… 本打算继续接着写第二篇。结果一拖,就是三年。

而在这三年里,前后参与开发了十多个项目(我们是流水线生产,老工具人),而涉及到输入交互的模块已经有IM聊天,直播间,异步视频播放页面,信息流评论等等。这些页面从最初使用 Activity 实现到演化成可用 Fragment,Dialog,PopupWindow 代替。所以原来那套技术实现已经不能满足。在寻找外部开源项目/技术博文无果的前提下,慢慢积累了一个库

几年过去了,桌面开发已经基本死了,现在轮到Android开发了?

有没有发现,这之间有什么不同?桌面开发死的是整个生态,就像实体经济转向了互联网购物一样,整个生态全部死掉,导致了跟桌面开发的各种岗位都不再招人,使得无论开发、产品、运营都必须原有的SEO优化、寻找网站流量转移到移动端。

而现在的Android则不同,它并没有死,相反,移动互联网现在已经发展的非常成熟,并且随着5G的到来,机会将大大增加。

那为什么大家会觉得Android开发不行了呢?无外乎是因为现在Android原生Native开发在逐渐转型,因为Native开发耗时但无法跨平台,无法做到像RN\Weex\Flutter一样,写一遍代码,多端运行的效果。

资本都是逐利的,顾家辉曾说:不以营利为目的公司都是在耍流氓。面对如此高效的产品生产方式,如果你是老板,你会不选择吗?尤其是创业公司。

那问题来了,那为什么依然有Android Native开发呢?因为它是原生的,所有的交互与效率都是最高的,对于大公司而言,不仅要讲究速度,又要讲究APP的运行效率及各项指标。所以,大公司更偏向于Native开发,而小公司更偏向于快速开发。

因此很多小公司不再招Android Native开发,这就导致Android原生岗位的减少。对于初学者而言,小公司岗位少,大公司进不去,这就是为什么培训公司都不再培训Android的原因。这就出现了安卓已死的论调。所以说,并不是Android已死,是门槛高了而已。

现在培训公司喜欢培训H5,学会保就业的承诺永久不变。这就是因为RN\Weex\Flutter的语法与H5相似,学了H5,除了能做原有的WEB开发以后,跨平台语言RN\WEEX\Flutter使H5的岗位大大增加,所以并不是H5好学,也并不是因为它火,只是它就业门槛低了而已。

同样的,即便你从H5开始进入跨平台开发语言,你以为会了RN\Weex\Flutter就不需要Android原生了?只是Androd底层架构不变,Android原生永远是需要学习的,所有的上层跨平台应用都是靠原生控件来实现的。Flutter可能有所例外,但Flutter是用Dart语言来写的,大家都不会,谁也别看不起谁,而且Flutter可以与Android原生完美兼容。

从商家逐利的本质上看,跨平台开发是趋势,即便RN\Weex\Flutter哪一天都挂了,还是会出来另一个跨平台语言一统天下。这个世界上,唯一不变的就是变化。

所以,Android不会死,但Android的门槛会提高。想在Android领域成就一翻作为,除了Android原生也需要了解跨平台开发。如果你是新入门的同学,我建议你在了解Android基本使用后,以跨平台开发学习为主,先找到一份工作(毕业就校招进入大公司的除外)。如果你的Android从业者,我建议大家学习跨平台语言,使自己永远立于不败之地,不要等到哪一天黑天鹅来了,欲哭无泪。(黑天鹅全称为黑天鹅事件,指目前无法预知的突发事件)

学习分享

在当下这个信息共享的时代,很多资源都可以在网络上找到,只取决于你愿不愿意找或是找的方法对不对了

很多朋友不是没有资料,大多都是有几十上百个G,但是杂乱无章,不知道怎么看从哪看起,甚至是看后就忘

如果大家觉得自己在网上找的资料非常杂乱、不成体系的话,我也分享一套给大家,比较系统,我平常自己也会经常研读。

2021最新上万页的大厂面试真题

image

七大模块学习资料:如NDK模块开发、Android框架体系架构…

image

2021大厂面试真题:

image

只有系统,有方向的学习,才能在短时间内迅速提高自己的技术,只有不断地学习,不懈的努力才能拥有更好的技术,才能在互联网行业中立于不败之地。

能在短时间内迅速提高自己的技术,只有不断地学习,不懈的努力才能拥有更好的技术,才能在互联网行业中立于不败之地。

文中资料都是免费分享给大家的,内容偏多无法展示出来,如有需要获取完整的资料文档的朋友点击这里即可免费获取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值