每個Android開發者都應該瞭解的資源列表
前言
這是一篇譯文,原文地址Resources every Android developer must know,在譯文開頭,推薦兩篇同樣適合於Android開發者閱讀的資源列表Android開發者網址導航和StackOverflow Android Tag,翻譯這篇文章的原因是最近在知乎上收到很多關於如何學習Android開發、Android學習路線等雷同的問題(Android在大學並不算是一門流行的課程,所以存在這樣的疑問很正常),沒有時間一一回復,索性將很久之前看到的這篇文章翻譯過來,希望能夠幫助到有需要的Android開發者。
正文
Android平臺持續瘋狂地增長,越來越多的開發者進入了Android開發者陣營,如果你在2013年才開始做Android開發,你將是一個幸運的人,因為這個平臺在過去幾年裡變得越來越成熟,同時網路上開發資源的數量似乎勢不可擋,這篇文章就是其中的一份子。
這篇文章適合於初學者和有一定經驗的開發者。
書籍
你可能覺得,都到2013年了,通過看書來學習一個新的開發平臺也太過時了,你的想法有可能是對的,但是你還是應該做一件事情:去閱讀Jeff Atwood列出的很多程式設計師沒有讀過但你應該讀的書籍列表
對於Android開發入門,我牆裂推薦下面這兩本書:
-
Mark Murphy寫的The Busy Coder’s Guide to Android Development,並不是因為這本書有2000多頁,對Android介紹得足夠全面才推薦它,而是因為它會持續更新(大約每兩個月會更新一次),這是在Android SDK頻繁更新的情況下特別值得閱讀的一本書,本書作者還會定期舉辦問答活動。同時書中的示例程式碼都託管在了github上。
-
Juhani Lehtimäki寫的Smashing Android UI,一本任何關心UI設計的Android程式設計師都值得閱讀的書。
官方開發者網站
在開發你的第一個Android應用之前,用心閱讀和學習Android Design,特別是下面這些主題:
另外請查閱下載部分,包含模板、圖示和控制元件的原始檔、Action Bar的風格和樣式圖示等等。
瀏覽了上面的資源之後,就可以開始寫程式了嗎?NO,你還需要閱讀下面這些主題:
-
使用者體驗和UI最佳實踐(必讀)
-
Android動畫效果(牆裂建議閱讀開源專案nineoldandroids)
優質問答網站STACKOVERFLOW
很多Android核心架構工程師、優質開發者和專家會經常會在stackoverflow上回答問題,這是一份StackOverflow上優質Android開發者名單
開發者部落格
許多部落格提供了大量的Android開發方面的資訊。
-
Gyuri Grell的Android開發者週報,一個評價很高的關於Android開發新聞的郵件列表,每週一次更新;
-
Android官方開發者部落格,部落格中的所有文章都值得一讀,很多文章都是非常有營養的,比如:避免記憶體洩露、Android應用記憶體分析等;
-
Romain Guy,一個Android核心框架工程師Romain維護的部落格,在你認為自己熟悉Android開發之前,請確保你閱讀過該部落格中的Android應用效能優化系列課程,另外值得說明的是:Romain還是一個偉大的攝影家;
-
Android動畫框架作者Chet Haase的個人部落格;
-
Mark Murphy的個人部落格
-
Cyril Mottier’s的個人部落格,裡面有很多有深度非常值得一讀的文章,比如:Listview技巧之擴大點選區域、Tweeted開發技巧、Google地圖Android API V2.0的烏托邦、快速啟動Android應用等等;
-
Mark Allison的個人部落格
-
Daniel Lew的個人部落格
Google+賬號
雖然Goolge+沒有成為一個社交網路,但它是一個Android開發方面重大的訊息源,作為一個Android開發者,下面這些Google+賬號非常值得關注:
同時考慮加入一些Google+圈子,比如:
開源專案
閱讀優秀的開原始碼是非常棒的一件事情:
-
Google I/O,如果你喜歡拷貝/貼上程式碼,這裡面很不錯;
-
Chris Banes開發的photup
-
Reto Meier開發的android-protips-location
-
Android官方在Github上開源的一系列專案Android source code.
開源庫
下面是一些非常有用的開源專案:
更多Android方面的開源專案請到Github上搜尋關鍵字"android",另外,Android APPDevAppsDirect收集了很多開源元件
Google I/O主題討論
每一年的Google I/O大會中的視訊都值得一看:
請停下來,你嚇到我了
這麼多資源看起來會讓作為一個初次接觸Android開發的你壓力山大,不過不要緊張,上面的這些連線只有一部分是對Android初學者有用的,很大一部分是需要你有一定開發經驗之後才能閱讀的。
下面提供一些快速消化本篇文章的技巧:
-
首先:讀書,為什麼要讀書呢?因為通過讀書你可以涉獵到與Android相關的所有基礎知識;
-
通過RSS訂閱部落格和StackOverflow中有價值的答案;
-
在Google+建立一個Android開發者圈子
Android開發者中的超級明星
啥都不說了,強烈推薦Mark Murphy和JakeWharton,為什麼推薦他倆?瞭解他們的履歷或者對Android開發所做的貢獻就知道了。
結語
在瀏覽了上面這些資源之後,你可以考慮加入到Android開發者陣營啦,但忘記告訴你一件事情,那就是你的工作需要和UI工程師配合完成,因為一個優秀的APP需要非常好的使用者體驗。
參考資料
相關文章
- 每個JavaScript開發人員都應該瞭解UnicodeJavaScriptUnicode
- 每個 Java 開發者都應該知道的 5 個註解Java
- 每個 JavaScript 開發者都該瞭解的 ES2018 新特性JavaScript
- [譯] 為什麼每個 Android 開發者都應該嘗試 FlutterAndroidFlutter
- 每個開發者都應該知道的33個JavaScript概念JavaScript
- 每個開發者都應該使用的VSCode外掛 - tvkoushikVSCode
- 重要!每個開發者都應該掌握的9個核心演算法演算法
- 每個前端工程師都應該瞭解的圖片知識前端工程師
- 每個程式設計師都應該瞭解的硬體知識程式設計師
- 【還沒開始】每個前端開發人員都應瞭解的延遲資料前端
- 每個開發都應該懂的正規表示式
- 每個開發人員都應該知道的WebSockets知識Web
- 後端開發都應該瞭解的登入漏洞後端
- 後端開發都應該瞭解的資訊洩露風險後端
- 每個開發人員都應該知道的 10 個 GitHub 倉庫Github
- 中級Android開發應該瞭解的Binder原理Android
- Ubuntu使用者都應該瞭解的快捷鍵Ubuntu
- 每個綠帶都應該知道的事
- 每個後端都應該瞭解的OpenResty入門以及閘道器安全實戰後端REST
- 開發者應該瞭解的API技術清單!API
- 每個人都應該知道的jQuery的提示jQuery
- 每個人都應該懂點攻防
- 8 個你應該瞭解的環保開源專案
- 每個 Linux 新手都應該知道的 10 個命令Linux
- 求職季 | 為什麼每個開發者都應該堅持經營一個部落格?求職
- 億萬富翁投資者使用的方法:每個投資組合都應該有加密貨幣加密
- IT職場:每個黑帶都應該知道的事
- 每個JavaScript開發人員都應該知道的新ES2018功能(譯文)JavaScript
- 每個Python新手都應該知道的程式設計技巧Python程式設計
- 每個資料科學專家都應該知道的六個概率分佈資料科學概率分佈
- 每位開發者都應該知道SOLID原則Solid
- 每個人都應該瞭解的金融小知識 — 利率計算 (含一道碼農面試題)面試題
- 每個 Kubernetes 應聘者應該知道的 5 個面試題面試題
- 每個高階前端工程師都應該知道的前端佈局前端工程師
- [轉]程式設計師都應該瞭解下版權和開源協議程式設計師協議
- 有趣的探索:每個遊戲開發者應該避免用的6種老掉牙設定遊戲開發
- [譯] android應用開發者,你們真的瞭解Activity的生命週期嗎?Android
- [譯] android應用開發者,你們真的瞭解Fragment的生命週期嗎?AndroidFragment
- 每個架構師都應該讀的八本經典書籍架構