前幾年移動互聯網創業的風口,現在漸漸消失,****移動互聯網被巨頭公司瓜分,一些創業公司倒閉了,Android 開發需求慢慢趨近於飽和。而當初移動互聯網處於風口時,自學、轉行以及培訓機構出來了大量 Android 開發從業者,致使目前看起來**市場供大於求。程序員
其實當下的供需關係不平衡不表明沒有需求,市場上過多的是隻會寫 xml 和 Activity、只會用代碼堆需求的初級 Android 程序員,而高級 Android 開發工程師仍然緊缺,而且薪資很可觀。】算法
The more things change, the more important it is to know the underlying principles.編程
半衰期長的技術要打好基礎,也就是更加通用的技術。安全
一來通用技術如數據結構和算法、計算機網絡、操做系統、計算機系統結構等,對技術的深層理解有很大的幫助,二來這類技術在不一樣的語言和技術方向上切換時是共通的。性能優化
軟實力實際上也是一項通用的技能,甚至比第一條更加通用。網絡
良好的溝通能夠縮短開會的時長、節省相互之間的溝通成本,也使得團隊合做更加愉快。不錯的文檔表達能力能夠省去很多的重複溝通。數據結構
懂得規劃本身的時間,上班時能更有條不紊地完成任務,下班也能高效地規劃業餘時間的學習。架構
懂得反思:爲何這個任務預計五小時能完成,卻變成了三天;爲何這個需求要這樣作,這麼作是最合理的嗎,還有更好的方式嗎?框架
對問題、業務和自身的更多思考有助於更好地發揮和展示你的技術實力。數據結構和算法
我的認爲一個較好的學習方式是先廣度優先遍歷,即粗略瞭解本身領域的各方面知識,而後深度優先遍歷,即選擇一個本身感興趣或者以爲值得深刻的方向深挖下去,等到這個方向學習研究得差很少了,再去深刻下一個方向的技術知識。例如:
插件化技術、響應式編程、組件化框架、系統架構等進階技術,承託着業務之下的基礎框架,可以使得開發者在面對需求和功能變化的時候有更快的反應和更優雅的行動。
業務邏輯日漸成熟的形勢下,用戶體驗愈來愈重要,忽然的軟件崩潰或是加載圖標持續5秒,對於高質量應用都是阻礙。渲染速度、網絡請求體驗、I/O優化、熱修復技術、耗電優化,都是性能優化須要重視的點。
Android 如今細分的領域很是多,逆向安全、音視頻、物聯網、SDK開發等等,能夠在這些領域中選擇一個並不斷深刻。
如果從時代背景的角度考慮,當下處於信息時代,用戶接收和喜好信息傳播的形式一路從文字、圖片、音頻、視頻,到了現在的直播。音視頻會是一個不錯的選擇。其中會涉及到音視頻編解碼和音視頻同步處理、特效處理、合成等等技術,對於 Android 底層源碼的理解也十分有幫助。
找準本身適合和感興趣的方向,而後埋頭往期衝就好了。 如今就去把你保存的那些Android的書本或者是視頻翻出來學習吧!