笼统来说,中年程序员容易被淘汰的原因其实不外乎三点。
1、输出能力已到顶点。这个人奋斗十来年了,依旧碌碌无为,很明显这人的天花板就这样了,说白了,天赋就这样。
2、适应能力越来越差。年纪大,有家庭,老油条,学习能力下降,磨洋工等等。
3、性价比逐渐降低。到了35岁的年薪基本都不会低的,然而输出能力到天花板了,随着年纪的逐渐增大,性价比会越来越低。说来说去就那经典的一句话:可替代性太高。25岁的年轻人便宜且前途可期,35岁已兑现天赋价格还高,这两选谁都差不多的时候,你说企业会怎么选……任何一个当了老板的人都会选前者。而如何增加自己的不可替代性?
一、初级入门篇
初级入门篇主要是接触Android多媒体展示相关的API, 通过单独的列举和使用这些API,对Android音视频处理有一个基本的轮廓,虽然知识点相对来说是比较散的,但是点成线,线称面,基本的基础掌握了,通过学习Android音视频核心的API将音视频的流程串联起来,这样对于音视频的了解和控制就不仅仅局限于最外层的API了,而是能够通过相对底层的方式来加深对Android 音视频开发的认知。
NDK模块篇
(一)C++与 C#数据类型总结
(二)C 与 C++之内存结构与管理
(三)C 与 C++之预处理命令与用 typedef 命名已有类型
JNI 模块
JNI 开发之 静态注册与动态注册(一)
JNI 开发之方法签名与 Java 通信(二)
JNI 开发之局部引用、全局引用和弱全局引用(三)
二、中级进阶篇
学习 Android 平台 OpenGL ES API,了解 OpenGL 开发的基本流程,使用 OpenGL 绘制基本图形,并了解相关的API的简单使用
《OpenGL ES 2 for Android》
《OpenGL ES应用开发实践指南 Android卷》
三、高级探究篇
1.深入研究音视频相关的网络协议,如 rtmp,hls,以及封包格式,如:flv,mp4
2.深入学习一些音视频领域的开源项目,如 webrtc,ffmpeg,ijkplayer,librtmp 等等
3.将 ffmpeg 库移植到 Android 平台,结合上面积累的经验,编写一款简易的音视频播放器
4.将 x264 库移植到 Android 平台,结合上面积累的经验,完成视频数据 H264 软编功能
5.将 librtmp 库移植到 Android 平台,结合上面积累的经验,完成 Android RTMP 推流功能
四、学习展望
完成上面的学习后,可以尝试做一款音视频相关的APP,这个APP尽可能多的用上你学习的知识,看看能做到什么程度。如果你能很好的做出来,并认真的把上面列举的所有的点都完成和整理了,相信你在Android音视频领域会越走越好。
总结
这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码
因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
如果需要可以戳这里自行领取
持续更新中…**
如果需要可以戳这里自行领取