Android應用開發必備的20條技能

範培華發表於2016-03-15

有些andorid開發人員感覺很迷茫,接下來該去看系統原始碼還是繼續做應用,但是感覺每天僅僅實在畫UI和呼叫MobileAPI處理JSON,沒有技術上升的空間。下面是包建強老師的《APP研發錄》當中列舉的20條需要精通的技能點看看你是否完全掌握:

1)Activity相關 

App應用開發,以Activity使用最多,設計LaunchMode、onSaveInstanceState、生命週期等技術。

2)Fragment相關技術 

用的人不少,明白是怎麼回事的人不多,推薦一本書《Creating Dynamic UI Android Fragments》

3)序列化技術 

有Parcelable與Serializable兩種。前者是基於Service的,後者是基於Bundle的,二者實現原理不同,但是達到的效果近似。

4)ImageLoader的原理和使用

類似的,還可以學習Facebook新近開源的Fresco,它對圖片的處理會更好一些。

5)fastJSON或GSON的使用

做App不會用實體自動匹配JSON資料,相當於白做。

6)多執行緒相關

包括Handler、Looper、ExecutorService等。

7)Adapter和ListView

這兩個技術捆在一起,經常容易崩潰,尤其是分頁的時候,要仔細研究深刻領會。

8)使用者Cookie設計  

需要把登陸機制徹底搞清楚,包括在HttpRequest頭中夾帶Cookie來進行使用者身份驗證的技術。

9)網路請求封裝

使用AsyncTask的網路底層封裝,使用Handler+Runnable的網路底層封裝。

10)Android與HTML5的互動

包括Android呼叫HTML5的方法,以及HTML5呼叫Android的方法。

11)程式碼混淆

沒有用過ProGuard,不知道keep相關語法,就仍是初級水平。

12)Android打包機制

涉及Android SDK中的若干命令。對Android打包過程做的每一件事都很清楚。進一步是Android多專案以來的打包技術。Ant、Gradle或者Maven,掌握其中任何一種打包機制即可。

13)線上Crash分析並修復

要具備通過分析Crash資訊修復線上Crash的能力。

14)記憶體洩露

包括記憶體優化、Eclipse或Android Studio的除錯功能。

15)除錯工具

包括DDMS、Eclipse或Android Studio的除錯功能。

16)Monkey機制

Android開發人員如何對一款App進行Monkey測試。附加技能~

17)單元測試

JUnit。對複雜的演算法寫過單元測試以保證其沒有問題。

18)GIT的高階功能

包括Stage、Rebase、Revert、Stash、Cherry Pick和Sub Module等概念。如果專案中使用的是SVN,要掌握SVN的版本管理策略。

19)外掛化程式設計

哪怕知道一點DexClassLoader的概念也好。這年頭,沒做過外掛化程式設計,出門面試都不好意思說自己是Android開發的。

20)設計模式

對常見的設計模式如工廠、生成器、介面卡、代理、策略模式耳熟能詳。

以上20點設計的技術完全掌握之前,並不用花太多精力去看Android系統原始碼。



相關文章