寫在前面的話
很多時候,你的努力在別人眼里就是一個傻瓜,但是,天道酬勤,你的努力侄訓在某一天以另一種方式回饋給你,
我有一個朋友,漂泊半生,碌碌無為,直到一手把他拉扯大的奶奶離世前把他罵一頓,他這才開始真心悔過,開始奮進,那一年,他已經虛歲三十了,
三十而立,
“你說的這個‘朋友’到底是不是就是你自己?”
講個笑話,有人30歲了轉行做Android 開發……關鍵還成功了,

當事人背景
我的朋友是農村出身,家庭條件不好,小時候父母私下做鞭(泡)出了事故,后面就一直跟著奶奶過日子,
但是,這一切并沒有讓他立志上進,失去親人后,他只是一味的放縱自己,拉幫結派,打架斗毆,曠課上網打游戲……最后,他成為了老師最頭疼的學生,但是他們總是念著他是一個孤兒而多了很多寬容,但是這樣的寬容只是讓這個處于叛逆期的孩子越走越遠,
結果可想而知,不管是中考還是高考,他都是名落孫山,最后憑著那么一點點天分進了一民辦的三本院校——學費最貴的那種,學了個計算機專業,
“好歹也是一個本科學歷吧,放心,奶奶一定供你讀……”他的奶奶這樣笑著安慰他,殊不知他根本就不曾上心過,對他來說,什么都無所謂,


碌碌前半生
進入大學后,少年也沒有什么特別的改變,不過是有了更多的玩樂時間,學習也就一般般,最后就那樣勉勉強強的畢了業,進入了社會,隨隨便便找了一份測驗的作業,也算是專業相關吧,
到現在,一晃走過了14個年頭,嘗盡途中的酸甜苦辣,默默望著窗外,掐指一算,從事計算機行業已近6個年頭,其中三分之一的時間在做測驗,也是從事過時間最久的一份職業,為什么能做這么久?他說因為自己沒有目標,只想勉強度日,
那你現在轉行是有目標了嗎?
“是的,我要轉Android開發,”

轉行導火線
最近《你好!李煥英》這個電影很火,主角的媽媽在孩子不爭氣的事情后意外去世了,做孩子的心懷愧疚,意外回到過去后一直想讓媽媽開心,為媽媽做了很多事情,
我的這位朋友是奶奶一手帶大的,卻沒有給奶奶爭一口氣,還讓老人為了送他上學辛苦還債,沒有過上一天安生日子,他一直很愧疚,
他從來沒有見過老人罵人,但是她走的時候,說了我:混賬——連自己都照顧不好!
后面老人跟他說了幾句些話,意思是不放心,要他好好活出個人樣兒,
他想,自己能為這個偉大的老人做的最后的事情就是好好在這個世界上活著了吧,
- 看官:你說的這個“朋友”到底是不是就是你自己?
- 筆者:是的,而且我現在已經進入阿里,這也算是轉行成功了吧?
轉行流的汗
轉行之難
我這里不是搞歧視,但是測驗做久了技術真的會退化,
我大學里本來也沒有學到什么東西,剛畢業的那段時間本來是學習技術,個人成長的黃金時期,我也沒有好好把握,說不后悔是騙人的,
后面我向公司提出了內部轉崗,但是公司不同意,這個也能理解,畢竟現在市場上的Android開發人力資源已經供過于求,尤其是初階的,競爭特別大,看不上我也是情理之中,
這里也給大家提個醒,要轉行就要做足準備,在不了解行情的時候不要輕舉妄動,
由于我轉行的時候已經32歲了,當時身邊的人都在勸我好好做好當下的事情,不要輕易冒險,關鍵是,現在“Android 已經涼了”,我身邊的人不止一次跟我說這些內容,
但是我還是這樣一路走下來了,我想要堅持一次,為自己,
我去報了輔導班,和很多非專業的朋友一起學Android開發,他們很多都是有基礎的,而我的基礎遠遠跟不上他們,這讓我不得不付出更多的時間和精力去學習,
所幸,我得到了很多大佬的幫助,
我的學習經驗分享
下面這段簡述自己的過往經歷,作為一個轉行的人,我深知轉行的不易,而根據我多年的作業經驗,高Android開發的很多都是非本專業的,
所以,我希望自己快要讓大家少走彎路,不管是初入Android,或想轉Android,還是已經踏上Android的路上,容筆者說說自己的想法,希望能幫到大家,
以下是我轉行Android 學習成長的心得體會,
我對那些想轉行的人的建議
俗話說:干一行,愛一行,學一行,專一行,👈
半路出家的人員心態都比較走兩個極端,一是看中他的前景;二者是不喜歡原作業(薪水低或干得不爽),我自己就是屬于二者,但不管是你已轉行了,還是將要轉行做Android,我都建議您靜下心來思考下面幾個問題:
- 我能做什么?
- 我不能做什么?
- 我的優勢是什么?
- 我的劣勢是什么?
- 做前端對我有何好處?
- 做前端我要付出何種代價?
- 我能不能堅持做下去?
如果你不能好好的,清楚的回答這些問題,我建議你還是不要輕意轉行做Android,

Android需要學哪些?
知識體系
廣度
- 對新技術充滿熱情,樂于嘗試
- 閱讀一些課外書籍
深度
- 探究設計模式,演算法,框架底層原理
- 學習、探索并總結屬于自己的Android開發方法論
- 一顆不滿足于淺嘗輒止的心
學習路線
根據對應的知識點找對應的學習資料(如視頻、書籍、檔案、文章、專案實戰等),學習路線圖想必大家都見過,精華詠流傳,
筆者在這里推薦一份詳細 Android 學習路線,附參考資料,

獲取途徑:點擊此處可看大佬的公眾號原文,里面有獲取途徑,
- 架構師筑基語言基礎
目前Android APP開發主流語言就是Java語言,Java語言最大的特性就是提高了軟體的互動可能性,可以說安卓手機幾乎所有應用程式都是利用Java語言來進行撰寫的,
知識要點:
1、深入理解Java泛型
2、注解深入淺出
3、并發編程
4、資料傳輸與序列化
5、Java虛擬機原理
6、高效IO

- 設計思想解讀開源框架
隨著互聯網企業的不斷發展,產品專案中的模塊越來越多,用戶體驗要求也越來越高,想實作小步快跑、快速迭代的目的越來越難,插件化技術應用而生,如果沒有插件化技術,美團、淘寶這些集成了大量“app”的應用,可能會有幾個g那么大,
所以,當今的Android移動開發,不會熱修復、插件化、組件化,80%以上的面試都過不了,
知識要點:
1、熱修復設計
2、插件化框架設計
3、組件化框架設計
4、圖片加載框架
5、網路訪問框架設計
6、RXJava回應式編程框架設計

- 360°全方位性能調優
在不同層次的開發工程師手里,因為技術水平的參差不齊,即使很多手機在跑分軟體性能非常高,打開應用依然存在卡頓現象,
另外,隨著產品內容迭代,功能越來越復雜,UI頁面也越來越豐富,也成為流暢運行的一種阻礙,綜上所述,對APP進行性能優化已成為開發者該有的一種綜合素質,也是開發者能夠完成高質量應用程式作品的保證,
知識要點:
1、設計思想與代碼質量優化
2、程式性能優化
啟動速度與執行效率優化
布局檢測與優化
記憶體優化
耗電優化
網路傳輸與資料儲存優化
APK大小優化3、開發效率優化
分布式版本控制系統Git
自動化構建系統Gradle4、專案實戰
啟動速度
流暢度
抖音在APK包大小資源優化的實踐
優酷回應式布局技術全決議
網路優化
手機淘寶雙十一性能優化專案揭秘
高德APP全鏈路原始碼依賴分析
徹底干掉OOM的實戰經驗分享
微信Android終端記憶體優化實踐

- Android框架體系架構
Android框架體系架構(高級UI+FrameWork原始碼) 這塊知識是現今使用者最多的,我們稱之Android2013~2016年的技術,
Android開發者也往往因為網上Copy代碼習慣了而導致對這塊經常“使用”的代碼熟悉而又陌生:熟悉的是幾乎天天在和它們打交道, 天天在復制這些代碼 ;陌生的是雖然天天和這些代碼打交道,但是并沒有深入研究過這些代碼的原理,代碼深處的內涵,
知識要點:
1、高級UI晉升
2、Android內核組件
3、大型專案必備IPC
4、資料持久與序列化
5、Framework內核決議**

- NDK模塊開發(音視頻開發系列)
NDK(Native Development Kit縮寫)一種基于原生程式介面的軟體開發工具包,可以讓您在 Android 應用中利用 C 和 C++ 代碼的工具,通過此工具開發的程式直接在本地運行,而不是虛擬機,
在Android中,NDK是一系列工具的集合,主要用于擴展Android SDK,NDK提供了一系列的工具可以幫助開發者快速的開發C或C++的動態庫,并能自動將so和Java應用一起打包成apk,
知識要點:
1、NDK開發之C/C++入門
2、JNI模塊開發
3、Linux編程
4、底層圖片處理
5、音視頻開發
6、機器學習

- Flutter學習進階
2020 年無疑是 Flutter 技術如火如荼發展的一年,現在這門技術也依然非常有價值,
每一個移動開發者都在為 Flutter 帶來的“快速開發、富有表現力和靈活的 UI、原生性能”的特色和理念而癡狂,從超級 App 到獨立應用,從純 Flutter 到混合堆疊,開發者們在不同的場景下樂此不疲的探索和應用著 Flutter 技術,也在面臨著各種各樣不同的挑戰,
知識要點:
1、Flutter跨平臺開發概述
2、Windows中Flutter開發環境搭建
3、撰寫你的第一個Flutter APP
4、Flutter Dart語言系統入門**
……

- 微信小程式開發
微信小程式作為現在比較火的編程開發應用場景之一,深受市場的青睞,這讓不少開發者眼饞不已,但是對于初學者來說,就完全摸不著頭腦了,不知道微信小程式開發制作需要學習那些知識,有需要的朋友可以參考本篇,
本篇知識要點:
1、小程式概述及入門
2、小程式UI開發
3、API操作
4、購物商場專案實戰

- Android相關原始碼解讀
這里大家可以去看這一篇文章:牛掰!阿里P7大佬爆肝半個月,把安卓原始碼決議編成了508頁的PDF,
完整資料獲取途徑:點擊此處可看大佬的公眾號原文,里面有獲取途徑,
關于 Android 程式員的一些Q&A
借這篇文回答一些剛入Android大門的朋友的一些問題,
自學Android可能嗎?
推薦以前看到的一個文:2020年,Android開發想自學可能嗎,大概要多久?
我個人覺得自學是沒有問題的,關鍵是要有毅力和資源,資源可以來我們的交流圈的共享檔案夾(添加我的威+信:study5233,備注:進圈),

程式員真的有“35歲危機”嗎?
程式員35歲危機是真實存在的,即便有技術傍身,還是難免對自己的生存能力產生質疑和焦慮,這些年職業發展,一直在尋求消除焦慮的依靠,
- 技術要深入到什么程度?
- 做久了技術總要轉型管理?
- 我能做什么,我想做什么?
這里推薦閱讀:程式員的出路在哪里?八年半老Android現身說法
永遠不要放棄一技之長,它值得你長期
信仰持有,獨立生存的能力,是消除中年危機的終極答案,

最后
我高齡轉行成功了,現在在做技術管理,但始終不會放棄我作為Android 開發者一技之長的根本,
遇到一些中途又轉其他行業的朋友,我想說,當你轉行那一刻起,就把要轉的領域變成了你新的“堆疊內技術”,然后又要重新走一遍技術沉淀的程序,
匆匆幾年,又過去了,所以不要輕易"換方向",Android 絕對是可以長時間堅持的領域,現在無論是小程式,快應用,甚至區塊鏈,都會需要我們Android 開發者,因為有龐大的用戶群體,所以長期堅持從事移動開發作業,在可預見的未來都不會“過時”,
人生是沒有局限的,只要你想努力,什么時候開始都不算晚,盡然選擇了Android,就要做好打持久戰的準備,把基礎打扎實后,隨時關注并學習最新的技術和框架,與時俱進,才不會被淘汰,
技術提升需要一定的程序,腳踏實地走好每一步,先定好一個個小目標,然后去一一實作,
最后,希望大家好好利用這份資料,最終達成所愿,
耗時298天,8大模塊、3382頁66萬字,Android開發核心知識筆記!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/264271.html
標籤:其他
