籠統來說,中年程序員容易被淘汰的原因其實不外乎三點。
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知識點、常見算法題匯總。)
里面包含不同方向的自學編程路線、面試題集合/面經、及系列技術文章等,資源持續更新中…
如果需要可以戳這里自行領取
持續更新中…**
如果需要可以戳這里自行領取