知乎熱點問題:兩年安卓經(jīng)驗程序員,要不要轉(zhuǎn)JAVA?
? 做了兩年多的安卓,突然想轉(zhuǎn)Java后端,感覺android現(xiàn)在慢慢成熟了,職業(yè)前景不太好,轉(zhuǎn)還是不轉(zhuǎn)?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Android 開發(fā)的現(xiàn)狀
時間回撥到2013年,一直從事Java開發(fā)的我,也被狂風(fēng)暴雨式的Android開發(fā)風(fēng)暴席卷,投身到Android開發(fā)的陣營中,那是移動互聯(lián)網(wǎng)的早期,移動開發(fā)正是熱潮,基于Java語言的Android開發(fā),由于有著天然的優(yōu)勢,吸引了大批Java開發(fā)者投入其懷抱,資本市場的帶動,加持龐大的Java開發(fā)者群體的加持,Android發(fā)展得非常迅猛,絲毫不比2000年初互聯(lián)網(wǎng)興起時的熱度,有過之而無不及,全球化的應(yīng)用都在轉(zhuǎn)向移動端,可以想像一下當時的需求是多么的旺盛,一兩個Android開發(fā)人員就可以完成Android端應(yīng)用的編寫,個人開發(fā)者也是層出不窮,也催生了大批個人開發(fā)者,據(jù)工信部數(shù)據(jù)統(tǒng)計,截止2018年底,國內(nèi)移動應(yīng)用的手機APP接近449萬,全球排名第一,電子政務(wù)、電子商城、網(wǎng)上外賣、網(wǎng)約車、游戲、短視頻等等豐富的應(yīng)用,全方位影響著大家的衣食住行,也改變了人們的生活方式??焖侔l(fā)展起來的移動互聯(lián)網(wǎng),慢慢也進入穩(wěn)定期,2017年開始明顯下滑趨勢,人才市場對Android開發(fā)人員的需求發(fā)生變化,只會堆應(yīng)用、UI布局、界面效果的Android程序員已經(jīng)無法立足,要求更多的是系統(tǒng)優(yōu)化、深度定制、對Android系統(tǒng)底層有深入理解的開發(fā)人員,這無疑對新手來說已無容身之所,從以就業(yè)導(dǎo)向的培訓(xùn)機構(gòu)可以看出,Android程序員的培訓(xùn)仿佛一夜之間消失的無影無蹤,那Android開發(fā)人員的前景是不是就嘎然而止了呢,我們來分析一下招聘信息,用真實的情況來體現(xiàn),可能更有說服力一點。
來自BOSS招聘:
? ? ? ?

? ? ? ?
Android招聘需求一般都在3-5年經(jīng)驗,要求是扛把子級別,移動開發(fā)項目小組一般的項目人員不會過多,1到2個,這就要求不能獨檔一面的幾乎不要。
如果你有幸在移動開發(fā)團隊里,發(fā)展前景也就只能是現(xiàn)狀而已,幾乎沒有上升空間,原因是移動端只是整個項目中一小部分,而真正主導(dǎo)項目的核心是大后端開發(fā),通常你的leader也是后端出身,并了解移動端、前端,說白了,想要在研發(fā)部門出人頭地,做后端開發(fā)的機會遠遠大于其他。
Java后端的要求
剛才說到大后端開發(fā),后端才是主宰整個項目的核心,當然也是從技術(shù)棧和解決核心問題的角度來理解,那對于Java后端開發(fā)的要求,需要哪些技術(shù)能力呢,威哥把當下互聯(lián)網(wǎng)主流的技術(shù)棧梳理了一個知識圖譜,想要走后端開發(fā),這是必經(jīng)之路:
? ? ? ?

? ? ? ?
有了這套知識圖譜,想必可以讓你了解到當下互聯(lián)網(wǎng)公司所需要的技術(shù)棧,想轉(zhuǎn)行,轉(zhuǎn)Java的小伙伴,可以閉關(guān)修煉了。
Andriod程序員如何轉(zhuǎn)Java后端
Android程序員如何轉(zhuǎn)到Java后端開發(fā),說實話不會太難,都是Java一家人,只是開發(fā)所使用的技術(shù)棧不同,只要加以學(xué)習(xí),掌握以上技術(shù)棧,轉(zhuǎn)起來會很快,首先Java基礎(chǔ)階段可以忽略,直接從Web開發(fā)開始,如果你在開發(fā)Android程序時使用過混合開發(fā),那你一定也用過前端的相關(guān)知識,H5,JS等,也應(yīng)該知道Web請求服務(wù)器的相關(guān)知識,那上手就更快了,只是在開發(fā)思想上需求注意一下,威哥從事過Android開發(fā)與Java后端,把兩者之間的關(guān)鍵點列給大家作參考,助你回歸Java后端的路上少走一點彎路:
Android程序員要關(guān)注的重點:
Android 開發(fā)的習(xí)慣需要細扣內(nèi)存的使用率,高效的利用線程
保持響應(yīng)不發(fā)生ANR
優(yōu)化設(shè)備的電池壽命
怎么優(yōu)化網(wǎng)絡(luò)
實現(xiàn)低內(nèi)存占用UI
Java后端要關(guān)注的重點:
從高可用、高并發(fā)、高性能的三高理論思考問題
從JVM優(yōu)化、數(shù)據(jù)庫優(yōu)化、緩存策略來優(yōu)化性能
考慮高并發(fā)場景下的性能與安全問題
考慮微服務(wù)架構(gòu)思想
考慮代碼設(shè)計的靈活性,可維護
最后再啰嗦一下
后端轉(zhuǎn)Android肯定是比Android 轉(zhuǎn)后端要容易得多,這是大后端的復(fù)雜性和項目的核心所決定的,能不能轉(zhuǎn)成功,還是看個人的學(xué)習(xí)能力和持久力,如果你想長期混跡編程圈,那選擇Java后端一定是一個正確的選擇,因為Java的強大地位會讓你在這個位置上發(fā)光發(fā)紫,而不必擔(dān)心沒有飯吃、或者哪一天Java不再香,這幾乎是不可能發(fā)生的事情,但是其它語言方向真不好說。

? 最后是威哥推薦的最新JAVA入門全套教程,點個關(guān)注,下次不迷路
