互聯網寒冬下,原生Android開發的路該怎么走? [復制鏈接]

2019-7-25 10:09
Hamals 閱讀:1001 評論:0 贊:0

移動寒冬

18年的冬真冷,大家都在說裁員,其實裁員一直都在,只是18年的確多點。android 10年了,已經積累了太多的技術,知識點,技巧,思路,這些前人都會了,并且正在創造新的思路出來,對于廣大的底層 coder 來說,僅僅是追趕就很難了,更別提去自己創造了,但是現實時我們嘗嘗學習了很多開源框架,落到實處就是僅僅會用而已,不說源碼看沒看過,甚至原理都不知道,不知道作者用什么技術實現的,這點就是廣大 coder 的現狀,沒有成長。

在來說大環境,在寒冷的冬天,還是有很多公司再招聘。在移動設備深入人心的今天,大家誰能離得開移動物聯網設備,巨大的設備保有量決定了移動端市場需求還是旺盛的。企業需要什么的移動 coder,中高端啊。從我們把頁面 code 出來的入門水平開始,成長到中級水平,說實話還是非常不容易的,事實是從平均來看,2-3年成長到中級的人也不是非常多的。企業再面試時也只能通過大量面試才能找到一個合心的高級開發,此過程耗時費力,說明大家水平相對需求來說還是太低,有待繼續加強!

冬天冷的不是市場,是處于行業低端的我們,移動開發行業,不進步就會死,永遠也不會改變,大家悶頭努力一年,我們都能有個好收獲的,再去面試機會機會大很多。

Android程序員薪酬

Android程序員開發年限及薪資:

如果你的薪資還沒超越 20K ,說明你的安卓做的還不夠好。

一方面,技術能力,知識面太窄了。建議多個模塊功能都嘗試一下。不能僅僅在自己公司的項目上,其他方面都不太精通。這樣的結果,對自己發展不太好。(比如,對自己公司的功能做的賊好。賊了解。問一個其他方面功能模塊,就不知道了。建議多方面都發展,并且多做數據分析。比如百度指數,阿里指數,APP功能指數,今日頭條指數。然后自己往這些方向發展一下。比如2018年-2020年,項目中小視頻,社區中小視頻,直播,都會在項目中添加。這方面經驗豐富的人需求很高)。

第二:有的同學是真的有能力,會做;但是能繼續深入的理解原理,或者知道原理了,自己怎么去解決問題(而不是百度解決)的能力就差一點了。比如很多人在面試中都面臨的,不會說,但是你會寫,能寫出來。為什么不會說,因為不是清楚系統的理解,所以不能回答的很好。

現實是我們夯實技術,擴展知識面之后,20K 是比較容易達到的,但是想過 30K 就很難了。那些能在 github 寫自己開源項目,比如 okhttp,retrofit ,rxjava 這樣重量級開源框架的 coder 才能過 50K 。著期中的差距,大家自己體會吧,努力可以過 20k,長久不停的努力積累之后才有過 30K 的希望,道路任重道遠,大家努力珍重。再著期中要平衡工作,生活,家庭,健康是個大問題,唯有高效率才是根本出路~

Android層級劃分

通常,我們將 android水平可以劃分為:入門,初級,中級,高級,資深

但是這樣的劃分對我們沒有什么指導意義,不同層級的Android開發者的不同行為,我們該如何進階和規劃呢?

第一層:普通程序員

第二層:熟練開發者、高級開發工程師、技術組長

第三層:技術專家、架構師、一線經理

第四層:科學家、研究員、首席(資深)架構師、部門研發總監

Android如何過冬

上帝總是偏愛那些愛思考的人,愛思考的人運氣一般也不會太差,在 哪有什么互聯網寒冬?只是你穿的少而已! 一文中,作者大概聊了聊關于思考的話題,我覺得大家應該去看看,然后思考下自己

技術是我們的基本盤,但不是全部,最近阿里不是放話了嗎,以后其他崗位的盡量挑有技術背景的,我看到這種思想漸漸再國內獲得認同,越來越多的公司都在更考慮有技術背景的人,這是我們的機會,年齡大了,年紀到了,總是只有很少的一部分人才能順利的晉升管理崗位,其他的同學必須面臨轉崗,轉崗不是換行業,產品,項目經理,運營等等其他我們 coder 都可以干,這些崗位需要的技術,知識點相比 coder 來說簡直是小巫見大巫,在我們平時對這些崗位有深入了解,有深入的交流經驗,有深刻的認識后,我們 coder 轉這些崗位其實不難,很快就能上手,但是這需要我們提前考慮好自己轉崗的位置,平時要多去專注,交流, 學習,能再本公司內轉崗是最好的了,這樣公司會對大家比較寬容

coder 們要是打算換工作了,那就不要研究其他的了,就專心 android 技術吧,python,H5 等穩定下來再說吧,我們畢竟是做 android 開發的,找的也是 android 開發的工作,其他方向雖然更好但不是公司考慮的重點。

Android的核心知識點

做Android 開發,無外乎那么一些知識點:(這里先放上一份知識大綱)

互聯網寒冬下,原生Android開發的路該怎么走?

  • 各大開源框架的研究,包括但不限于下面幾個
  • OKhttp、Retrofit、eventbus、Glide、eventbus、Rxjava、blockcanary、mvvp、dagger2等。
  • 組件化是基本要會的,插件化大公司要求會實操的。
  • java 部分,包括 常見的數據結構和算法,hashmap,二叉樹,紅黑樹,apt 注解,aop插樁,整套多線程知識點,包括ThreadLocal實現原理
  • flutter/Dart 大家要開始學了,就和當年我們學 kotlin 一樣,flutter 基本一錘定音了,google 下一代就是 flutter 的天下。
  • android 的系統原理,Lru算法,Binder機制,EventBus實現原理和為什么不能跨進程,跨進程幾種方式,AIDL,handler機制。
  • 音視頻開發,直播、點播、音視頻通話、音視頻會議,短視頻,這些不一定要多深入,但是基本的各大平臺的 SDK 要會集成,能根據開源的 嗶哩嗶哩IJKMediaPlayer 編寫自己的視頻,音頻播放模塊。
  • 最后,就是Android的優化了,Android的優化無外乎以下幾個方面:內存優化(穩定性)、交互優化(流暢度)、耗電優化(省電)、安裝包大小優化、網絡優化、應用啟動優化等幾個方面。

如果大家想要深入的話,可以重點關注下以下幾個方面的內容:

  • 圖形圖像開發,不限于OpenGL ES,EGL,GLSurfaceView,濾鏡,美顏,canvas,paint
  • 應用層開發。主要還是原生開發,提高性能優化技能(啟動耗時、內存、耗電、網絡、數據庫、穩定性等),達到高級開發者的水準
  • 深入Android專業技能提升。主要是閱讀源碼,理解透Android開發常見的流程和原理(activity啟動流程、事件分發機制、廣播機制、Binder機制、內存管理機制等)

向Android架構師發展。從平時的一點一滴開發中,有意訓練Android架構設計能力,這需要站在一個更高的角度來統籌App開發。

  • 跨平臺開發能力。如RN、Weex、Flutter等。大部分公司目前都需要有跨平臺開發能力,所以我們很有必要提高這方面的能力
  • SDK和框架開發。可以通過研究開源項目或者實際項目開發,抽象提取有用SDK和框架供其他人使用
  • 研究Android安全開發。App加固原理和實現,熟悉常見加密方式(如:RSA、DES等)、Https、支付安全等。
  • Android自動化測試工具開發。這需要對ADB、Android截圖、Android布局解析、Android測試框架等相當熟悉
  • 音視頻開發。前兩年比較火的直播,還有這一兩年比較火的短視頻,都是與音視頻相關。所以,我們可以了解音視頻的編解碼以及傳輸協議等。
  • 手游開發。游戲給鵝廠帶來了穩定的收入,所以這也是不錯的方向。這就需要熟悉常見的游戲開發框架cocos2d-x、Unity3D
  • 圖像開發。比如美圖秀秀、天天P圖,都用到圖形的合成、濾鏡等技術,對圖像處理有很高要求。
  • Android Framework 開發

除此之外,要成長為一個架構師,還需要開發者具備系統設計能力。具體來說,為如果你僅僅是對各種各樣的技術都熟悉,有技術廣度,也有一定的技術深度,實際上是不夠的。如果你的系統設計能力不到位,可能導致你在開發系統的時候會亂用技術。

比如說,有的系統他有一些自己特殊的業務場景和技術挑戰,實際上在這個場景之下比較合適的是采用 “緩存 + 數據庫” 的技術方案來應對。但是呢,有的工程師會很多技術,但是缺少這種準確的分析系統問題,提出合理的技術方案的能力,也就是缺少系統設計能力,導致他可能會引入Elasticsearch這種技術來嘗試解決這個問題,那么結果必然是失敗的。

規范代碼

不管如何,你的代碼得先能讓人看。這是我在剛剛入行時,一個老司機指導我的,隨著我在學習的深入,了解的更多,我們在基本功上的追求不就是為了代碼更加好看嗎,好看的代碼才更好懂,才能好改,設計模式,代碼架構,框架設計,MVP(多端分離) 不都是追求的這個最終結果嘛。

因此,我們可以從以下幾個方面著手:

  • 實現功能前先設計好代碼,好的框架層次,讓我們可以快速的了解整個框架實現,快速的找到想要的代碼,優秀準確的名字我們可以知道類是干什么的,
  • 注釋寫的盡量詳細
  • 不要寫太長的方法
  • 不要寫太“牛”的代碼了,有的程序員喜歡寫非常有個性的代碼,喜歡寫一些別人很難看懂的代碼,他認為這樣才能顯示出自己的“高水平”,這樣就不是高水平了,只能說代碼的可讀性太差了。

最后,互聯網不存在所謂的寒冬,只是你沒有努力罷了!!!


我來說兩句
您需要登錄后才可以評論 登錄 | 立即注冊
facelist
所有評論(0)

領先的中文移動開發者社區
18620764416
7*24全天服務
意見反饋:[email protected]

掃一掃關注我們

Powered by Discuz! X3.2© 2001-2019 Comsenz Inc.( 粵ICP備15117877號 )

时时彩改欢乐生肖