Android學習之路

stormzhang發表於2014-07-18

  收到一些朋友的微博私信,說能不能給Android新手們一些指導,我只能說指導談不上,畢竟我也很多東西正在學習中,與此同時一大學同學準備轉行Android,可以說是從頭開始,那麼我就姑且以一個過來人的身份給一些建議吧,只希望在學習的過程中能夠少走些彎路吧。

 硬體

  • 電腦–推薦Mac

  首先宣告我不是果粉,個人Windows,Linux,Mac OX系統均用過, 只能說Windows上面的開發工具簡直難以恭維,尤其命令列超級難用,而Linux自己必須得花不少時間在折騰中,更是不適合新手了,Max OS是我認為迄今為止最好用的系統,沒有之一, 所以如果你不差錢的話,強烈建議入手一臺Mac,推薦Pro系列, 當然它的價格確實比較昂貴,如果暫時入手有困難,推薦以後手頭寬裕的時候再入手吧,會帶給你質的體驗。(Google的工程師們都在用Mac,應該比較有說服力吧)

  • 手機–推薦Nexus 5

  做Android開發最難以忍受的就是那龜速的模擬器,強烈推薦入手我Google的Nexus系列,原生rom,價效比超高,有條件的推薦再入手一臺小米或三星之類的,不是因為他們有多好用,而是因為目前市場上這兩個品牌的手機份額最大,實際開發中可能需要進行適配與測試,總之你需要有臺Android手機。你可能還需要知道魅族手機有個SmartBar的東東,雖然我認為確實很SB。最後你實在還是要用模擬器的話,那麼姑且就給你推薦一款比較快速的模擬器吧—-Genymotion, 具體的見我這篇部落格一個強大的Android模擬器Genymotion

 開發環境

  Google幫你整合了一個完整的Android開發環境,包含一個定製的Eclipse + ADT plugin,以及最新的SDK及原始碼

  相比與Eclipse更推薦使用IDEA,以後可以無縫過渡到Android Studio

  首先說明這個不適合新手們使用,但是你必須知道這是Google最新推出的Android開發工具,基於IDEA,編譯依賴Gradle,目前還沒有推出1.0的正式版,但是你依然可以業餘專案熟悉瞭解下,因為這也許是Android開發工具的未來

 翻牆

  俗話說,不會翻牆的程式設計師不是好程式設計師,尤其最近Google各項服務被遮蔽,以上IDE的下載也就都需要翻牆,這裡推薦一個靠譜的VPN吧,支援多裝置MAC, Windows, Android, iPhone等, 如果和小夥伴們一起合買的話每月只要幾塊錢,圈內的朋友們都在用,如果你通過下面連結購買的話,你和我的賬戶都會增加10元錢。

  雲梯VPN

  如果無論如何你都不想翻牆的話,這裡github上可以直接下載以上Android開發工具

  AndroidDevTools

 Google Android官方教程

  Android Training Course in Chinese

 Android基礎

  上面可能是一個比較全面系統的培訓教程,對於新手們可能對某些需要著重掌握的東西比較迷茫,於是整理下個人認為新手們必須要掌握的知識點,順便也會附帶相應覺得不錯的講解部落格地址。

  Activity實際開發中使用頻率最高,這個必須要理解

  Android中的四大元件必須得知道,也是面試常問到的

  ListView是所有控制元件中最常使用且對新手來說比較複雜的用法,各種Adapter的使用以及ListView的優化都是必須掌握的

  Intent解決了Android中四大元件的通訊,非常有用,這篇部落格收集整理了系統的標準Intent

  介紹一些Android螢幕適配的基礎

  Android中的SQLite需要掌握,這篇部落格很適合新手

  3.0之後新加的Fragment,必須要掌握,目前使用的場景也是越來越普遍了

 Android中級

  Android的應用程式的生命週期需要理解,面試也是經常會被問的

  View做為UI開發中最常用到的,必須要深入理解

  Service作為Android四大元件之一,在每一個應用程式中都扮演著非常重要的角色

  目前比較常用比較流行的資料格式就是json了,這篇部落格教你如何使用Google Gson庫來進行json解析

  Android開發中經常會用到xml佈局,那麼佈局優化方面的知識更是需要掌握的了

  詳細講解了Android中Intent中如何傳遞物件

  Android開發中非同步操作是經常使用的,必須理解掌握

  Android非同步操作的另一種方法

  很早的一個小demo,教你如果做一個App的Loading動畫

 Android進階

  Google官方Android新的構建系統,可以很方便的管理依賴、編譯打包等

  一系列的效能調優教程,讓你的程式碼以及App更暢通!

  一個開源客戶端,教你使用Studio、Gradle以及一些流行的開源庫快速開發一個不錯的Android客戶端

  自己整理的一些Android開發資源,包括開發、工具、設計等,相信會對你有用的

 Android設計

  在開發一款Android App之前,你需要了解下Android平臺的設計規範,這裡有一系列關於Android Design的講解以及Google最新推出的Material Design中文翻譯版

 Android開發必知的一些開源庫

  說到開源庫就不得不提GitHub,只能說是目前最活躍的開源社群,不知道的趕緊去註冊個賬號使用起來,絕對是你快速提升技術的利器。

  Volley

  App開發中免不了要和服務端進行互動,而volley是Google官方推出的一個開源的網路通訊庫,它能使網路通訊更簡單,更快速。

  ActiveAndroid

  ActiveAndroid算是一個輕量級的ORM(物件關係對映(Object Relation Mapping))框架,簡單地通過如save()和delete()等方法來做到增刪改查等操作。

  Retrofit

  Retrofit和Java領域的ORM概念類似, ORM把結構化資料轉換為Java物件,而Retrofit 把REST API返回的資料轉化為Java物件方便操作。同時還封裝了網路程式碼的呼叫。

  Android-Universal-Image-Loader

  Android-Universal-Image-Loader是一個強大的開源圖片非同步載入庫,該專案的目的是提供一個可重複使用的儀器為非同步影象載入,快取和顯示。

  Android開源專案分類彙總

  非常全面的GitHub開源專案彙總,不需要重複發明輪子,盡情遨遊在開源世界裡吧

  來源: http://stormzhang.github.io 作者:zhangqi8

相關文章