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

來源:互聯網
上載者:User

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

有些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系統源碼。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.