作者: 梁建
梁建作為網易云音樂的安卓主程,經常會碰到準備入行安卓開發的同學詢問關于如何入門和進階。
梁建網易專業委員會成員,他帶領團隊從無到有開發網易云音樂,有非常豐富的項目開發和管理經驗,對Android系統、交互設計有深刻的理解。
在他看來,新手一般會遇到以下幾個問題:
- 如何系統學習Android 開發知識?
- Android 面試都會問些什么問題?
- 初級/高級/資深的進階之路是怎樣的?
- 面對技術更新如此迅速,我該如何應對?
其實這每一條的背后,都涉及到合格的安卓開發人員,其開發知識體系是怎樣的,需要學習哪些方面的知識,進而符合公司的日常開發需求。
為了解決大家的疑問,梁建專門整理了一張思維導圖,用來梳理合格的安卓開發工程師應該具備的開發知識體系。
↓↓ Android知識體系框架 ↓↓
接下來,我們具體講一講各個部分的內容。
四大組件
UI 設計
常見View的使用
網絡
線程和進程
數據存儲
進階學習
編程基礎
網絡協議
數據庫
開源框架
測試基礎
任何一個開發都不能把產品的質量完全依賴于專業的測試人員,相反,應該直接把上行質量作為自測目標。所以,開發人員需要學習必要的測試方法,常見的測試方法包括:
其他補充學習
講完知識體系,下面講講作為一個新人如何快速入門和進階的一些經驗。想要快速入門,可以嘗試以下的方式:
- 買一本通俗易懂的書籍,快速看完;
- 查看并模仿官方samples,這可以讓你了解安卓的樣子;
- 實踐一個感興趣功能
入門之后,進階可以分為三步:
第一步進階:系統學習官方training和guide部分,仔細看完獲益匪淺
第二步進階:引入開源項目簡化開發,并查看源碼了解實現;
第三步進階:當你慢慢熟悉開發之后,這個時候你就需要對view的內部世界更加了解,查看常見組件view等內部實現,查看Activity ManagerService, Android進程啟動,低內存殺進程等運行機制,學習安卓運行環境,學習各種調優工具進行有化,