客2消,客1消,客0消...脉脉劝退客户端多次的你们究竟是何用意?

经常逛逛脉脉职言平台,作为一名Android开发者,难免会更多的关注行业动态。

脉脉职言充斥着:“客户端内卷,客户端3年内消失、客户端2年内消失、客户端1年内消失,客户端已消失。”言论。

最近看到很多客户端要消失的言论,整体感觉就是贩卖焦虑。

不过,客户端在走下坡路确实是真的。目前客户端存在的原因在于跨平台性能不够好,但差距在缩减。

客户端工作三年和工作五年十年的差距,大多数都在深度广度上,源码了解更深,解决的bug多一些,但工作三年开发的 app 已经够用。

现在贩卖焦虑也是好事,能提前有危机意识。大前端趋势是肯定的,react、flutter还要继续卷着学。有机会做管理就努力争取。

不要把鸡蛋放到一个篮子里,要提前规划后路,如果不做这行了,以后靠什么谋生?值得我们深思。

我自己是做客户端的,自己也在招人,理性说几句。客户端可做的事情太多了,可做的深度也更深。一般小厂快速开发迭代上线,rn的技术选型会更好一些,毕竟快速试错和开发成本都比较低,对大厂来说,一方面人力成本不是太在意,另外客户端确实能做的事情更深更多,轮子之类的也会自己维护。所以对于只做业务,写写ui,调调api的客户端可能会淘汰,但是对于底层的客户端反而是非常稀缺的。

在现在这个阶段,公司之间的技术鸿沟已经非常明显,开发者身在其中,也因为自身学习能力,环境,项目等等的差别,技术上的差距越拉越大,造成了工作几年之后的两级分化,并且这种差距的拉开不是靠自己的努力就能弥补的。在前段时间面试了一个在某一线手机厂商做App的同学,985出身,工作3年,目前也是公司的核心骨干,跟我说了他做的很多UI上的优化和重构工作。他们的App团队大概是4,5个人,看的出来他已经在力所能及的范围内努力做到最好,可惜,受限于团队规模,支持力度和技术储备,他的天花板来的太快,做的不够深入,技术能力也不够全面。

那面对这种情况,作为开发者,我们能做的是什么?最基本的,脱离舒适区,不停磨练自己的技术。举我自己的例子,刚进公司的时候我主要做的是UI,平时搞一些页面上的优化,解决一些小BUG和ANR,做的还算不错;因为之前做的不错,也因为方向变化,大半年之后我开始切换到做视频下载,后来又开始做视频播放,一年半多时间里跟我的导师把空间播放器和下载器推倒了重做,到现在各项指标都很不错。刚开始切换的时候很痛苦,音视频领域入门有一定门槛,项目压力非常大,之前又完全没有接触过。那段时间不知道多少次15楼南区半夜和假日只剩我跟我导师两个人在公司加班,可现在想想也确实是成长最快的时候。这块做的差不多了,今年又开始做编解码,继续在音视频这块深挖下去。所以就是这样,技术不行就深挖技术,觉得环境束缚了你就尽快跳槽,保持自己足够的竞争力。或许一次跳槽还没有办法改变什么,但这是一个量变产生质变的过程,一份不断向上的简历也能为你敲开很多公司的大门。

我在一线互联网企业工作近十年,指导过不少同行后辈。帮助很多人得到了学习和成长。

应用层开发

Android原生开发,需要重点关注的依然主要是各种性能优化,启动速度,耗电量,流畅度,网络优化再到大厂项目实战,这些都是作为一名优秀Android开发具备的基本素养。

  • 启动速度
  • 流畅度
  • 抖音在APK包大小资源优化的实践
  • 优酷响应式布局技术全解析
  • 网络优化
  • 手机淘宝双十一性能优化项目揭秘
  • 高德APP全链路源码依赖分析
  • 彻底干掉OOM的实战经验分享
  • 微信Android终端内存优化实践

以上资源均免费分享给大家,https://github.com/Android-Alvin/Android-LearningNotes 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

音视频开发

音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台。

以前是windows系统,而现在则是移动系统了,移动系统中又是以 Android占比绝大部分为前提,所以Android NDK技术已经是我们必备技能了。要学习好NDK,其中的关于C/C++,jni, Linux基础都是需要学习的,除此之外,音视频的编解码技术,流媒体协议, ffmpeg这些都是音视频开发必备技能,而且OpenCV/OpenG/这些又是图像处理必备知识。

接下来我们可以通过字节跳动抖音部门整理音视频学习手册,来学习如何进行音视频开发。
以下是这份开发文档的部分章节:

阶段一:Android多媒体

第1章 三种方式绘制图片

第2章 AudioRecord录制PCM音频

第3章 AudioTrack播放PCM音频

第4章 Camera视频采集

第5章 MediaExtractor MediaMuxer 实现视频的解封装与合成

第6章 MediaCodec硬编解流程与实践
image

阶段二:OpenGL ES

第7章 OpenGL ES 基本概念

第8章 GLSL及Shader的渲染流程

第9章 OpenGL ES 绘制平面图形

第10章 GLSurfaceView源码解析&EGL环境

第11章 OpenGL ES矩阵变换与坐标系统

第12章 OpenGL ES之纹理

第13章 OpenGL ES 滤镜 (篇一)

第14章 OpenGL ES 实时滤镜

第15章 OpenGL ES粒子系统 - 喷泉

第16章 OpenGL ES粒子效果-烟花爆炸
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T38lwFVk-1618385464192)(https://upload-images.jianshu.io/upload_images/24944278-ec6e4cfc22accf3a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

阶段三::JNI&NDK

第17章 JNI与NDK的学习和使用

第18章 JNI - 引用类型、异常处理、函数注册

第19章 NDK构建方式 ndk-build与cmake

第20章 指针、内存模型、引用

第21章 运算符重载、继承、多态、模版

第22章 STL 之 容器

子系列 算法

第23章 算法系列 - 冒泡排序

第24章 算法系列-快速排序

第25章 算法系列-堆排序

第26章 算法系列-选择、插入排序以及STL中sort的实现

第27章 算法序列 - 二叉查找树

第28章 算法序列 - 平衡二叉树

第29章 算法序列 - 散列表

阶段四 : FFmpeg

第30章 音视频基础知识

第31章 FFMPEG常用命令

第32章 FFMPEG +OPENSL ES实现音频解码和播放

第33章 FFMPEG + OPENGLES 边解码边播放视频
以上资源均免费分享给大家,https://github.com/Android-Alvin/Android-LearningNotes 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

微信小程序

小程序是基于微信这个亿级流量入口所衍生出来的产品,而快应用,快应用是九大手机厂商基于硬件平台共同推出的新型应用生态。用户无需下载安装,即点即用,享受原生应用的性能体验,不过个人觉得,他已经凉凉了,小程序倒是挺看好的,腾讯这座大山,微信这座凉亭,你想不凉快都难,不过看你是否刚需,比如你公司有需求,那你可以去学习。

推荐学习的新技术,Flutter和Kotlin,这两个都是Google推荐的。

Flutter

Flutter是Google在2018年2月27日,在2018世界移动大会上发布的用以帮助开发者在ios和Android两个平台开发高质量原生应用的全新移动UI框架

官网:https://flutter.io/

中文论坛:http://flutter-dev.cn/

由于是是Google发布的,就前景来看,还是值得肯定的。

Kotlin

Kotlin 是Google推荐的官方开发语言,与Java互通,可相互转换,简洁安全等,是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由JetBrains 设计开发并开源,

Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。

学习资料

Kotlin 官网:https://kotlinlang.org/

Kotlin 文档:https://kotlinlang.org/docs/reference/

Kotlin 中文文档:http://www.kotlincn.net/docs/reference Kotlin GitHub:https://github.com/JetBrains/kotlin

本文在开源项目:https://github.com/Android-Alvin/Android-LearningNotes 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页