安卓開發中個人能力的進階進程

有一天小吳突然說:我做Android開發的時間也不短了,不管你說什麼東西都能跟你說道說道,但如果繼續深入聊一些細節的東西,我就會很吃驚:“哎?這個我之前怎麼沒注意到過?”,可怕的是這種情況發生的概率並不在少數,這是爲什麼呢?

如果你也有類似的感覺,那麼就說明你也碰到學習瓶頸期了。



處在瓶頸期說明我們對自己的能力範圍無法進行精準評估,導致我們自己也不知道哪一塊是完全掌握的哪一塊還是有欠缺的。

所謂的進階

既然已經知道了我們處在瓶頸的原因,就可以着手準備我們的學習計劃,也就是Android開發進階了。

在文章開頭的分析中我們知道了自己的弱點其實就是認知不足,所以我們需要定製一個能夠評估自己掌握程度的標準。

由於Android開發所涉及的知識面實在太廣,我們不得不先劃分幾個籠統的模塊,然後在每個模塊內部繼續細分更小的模塊,依此類推形成一個樹狀體系。

知識體系架構

結合目前我的處境,我覺得我可以將所有的知識大致分爲三類模塊:

  1. 業務能力

業務能力就是日常開發時會接觸到的各種各樣的知識,這類知識並不需要了解的有多麼深刻,例如你只需要知道在加載bitmap時通過設置option可以調整顯示比例從而優化內存,而不需要知道它是如何調整比例的。雖然沒有要求深度但要求廣度。需要了解的知識儘可能的越多越好,越全面越好。

  1. 技術深度

光有豐富的業務能力還不夠,出色的開發人員一定是對技術深度有追求的,對技術瞭解的比較深刻後在開發中可以充分的讓資源物盡其用。學習這類知識不能急於求成,不能吝嗇時間成本,爭取學一樣就學的透徹,例如HashMap類,閱讀源碼勾勒出所有的實現細節,然後在歸納整理。

  1. 架構能力

這部分的知識算是個人能力的展現,如果前兩類知識積累到一定程度後,很自然的就可以憑藉着個人的對所學知識的充分運用,自己設計出一些創新或者僞創新的工具或者開發架構方法。



具體實施方法

讀到這裏的你如果有認真思考的話你就會發現,真正的問題並不是我們少學了什麼東西,而是我們不清楚自己少學了什麼東西。

以樹形結構對知識進行分類歸納能夠儘可能全面的覆蓋到所有的知識點,上節中提到的三個模塊就是龐大的樹形結構中的幾個次根結點。



在樹形結構中每個節點代表一個知識點,其子節點是對該知識點內又具體劃分了模塊,目的是更容易分類。

學習的過程就是不斷的把新接觸到的知識消化並置於樹中合適的位置。

把以前掌握的知識整理分類歸納是非常必要的,攘外必先安內,學習亦是如此。

現在網上有好多整理好的目錄,非常不建議直接拿來用,一是涵蓋範圍不全面,二是非自己整理的會缺少大局觀的認知。

所以強烈建議自己動手去整理,整理時需要兩個步驟:

  1. 樹形結構目錄

這個目錄就像上圖一樣即可,推薦使用類似百度腦圖等工具,比較方便一點。

  1. 筆記

每一個樹形節點都是一個文件夾,裏面保存着對應分類的知識筆記,推薦類似有道雲筆記之類的工具。

文章後面整理了一些三類的知識點,但沒有進行詳細分類,僅供參考。

業務能力進階

  1. Android&Java API的熟練使用

  2. Android Studio的熟練使用

  3. 調試程序

  4. 單元測試

  5. Android官方支持庫的使用

  6. 主流開源框架的熟練使用

  7. apk編譯流程

  8. gradle的使用

  9. Android版本的更新內容

技術深度進階

  1. JVM運行原理(方法,變量)

  2. Java 多線程相關

  3. Java 常用API源碼分析

  4. Android 系統原理及源碼分析

  5. 主流開源框架源碼分析

架構能力進階

  1. 性能監控與優化

  2. Mock框架搭建

  3. 項目架構設計與實行

  4. 設計模式




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章