每個 Android 開發者必須知道的資源集錦
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
隨著Android平臺持續驚人的增長,越來越多的開發人員開始工作於Android應用程式。而且現在的Android平臺已經非常成熟了。
這篇文章比較適合於初學者和有一定經驗的Android開發者,文中羅列了最棒的資源。
書
也許你會認為從書中去學習新的開發框架會有點落伍,但這也確實是一條正確的道路。參見Jeff Atwood的《Programmers Don’t Read Books – But You Should》。
我推薦這兩本書:
- Mark Murphy的《The Busy Coder’s Guide to Android Development》。這本書的特別不僅是在於它的深度覆蓋(有2000+頁),還在於其頻繁的更新頻率(〜每2個月)。這是迄今為止關於Android SDK這個快速變化的主題在書籍中最佳的模式。Mark Murphy還定期開通一個辦公時間,允許使用者提問。圖書樣品託管在GitHub上。強烈推薦。
- Juhani Lehtimaki的《Smashing UI》。一本很精彩的書,適合任何關注UI設計的Android開發者。
DEVELOPER.ANDROID.COM
在你寫第一個Android應用程式之前,請用心研讀和學習Android Design這個網站。具體來說,是這些文章:
另外,還可以下載包括模板,圖示和控制元件的原始檔,樣式和無樣式的動作欄圖示等在內的部分。
想要開始寫程式碼?sorry,請接著閱讀:
- Best Practices for User Experience & UI (必讀)
- Best Practices for Performance
- Displaying Bitmaps Efficiently
- Adding Animations (也可見於NineOldAndroids庫)
- Tools help
- SDK Samples
STACKOVERFLOW
許多Android核心框架工程師,開發人員以及專業的Android開發人員經常在stackoverflow.com上回答問題。這是stackoverflow上一系列頂尖的Android使用者表。我訂閱了很多RSS,例如:CommonsWare(Mark Murphy),Dianne Hackborn,Romain Guy,Reto Meier,Trevor Johns,Roman Nurik,Adam Powell (感謝 @remdroid!).。
部落格
部落格上面也有大量Android開發的最新資訊:
- Gyuri Grell的Android Dev Weekly。每週提供最新的Android開發資訊。強烈推薦。
- Official Android developers blog。這個部落格的文章非常值得瀏覽如:《Avoiding memory leaks》,《Memory Analysis for Android Applications》。
- Romain Guy。這是一個很牛逼的Android框架工程師寫的部落格,而且寫的相當棒。一旦你熟悉了Android開發之後,一定要閱讀《Android Performance Case Study》這篇文章。題外話:Romain也是一位偉大的攝影師。
- Chet Haase的Codependent,Android動畫框架的創造者。
- Mark Murphy的The CommonsBlog。
- Cyril Mottier的Android開發部落格。部落格文章寫得非常深入。一些最新的帖子是:《ListView Tips & Tricks #5: Enlarged Touchable Areas》,《Tweeted Android Development Tips》,《The Google Maps Android API V2 Utopia》,Android App Launching Made Gorgeous》,《 “Pull-to-refresh”: An Anti UI Pattern on Android》。
- Mark Allison的Styling Android。
- Daniel Lew的Coding Thoughts——來自於一個寫Expedia的Hotels and Flights app(從前:Mobiata)的開發人員的偉大祕訣。
GOOGLE +
雖然Google+還沒有成為社會網路,但它是Android開發非常寶貴的資料來源。你可以參考的一些Google+資料有:Tor Norbye (ADT),Dianne Hackborn,Romain Guy,Chris Banes,Roman Nurik,Nick Butcher,Adam Powell,Rich Hyndman, Cyril Mottier,Paul Burke,Jeff Gilfelt.。
當然不能忘記Jake Wharton,ActionBarSherlock、ViewPageIndicator、 NineOldAndroid和很多其他開源Android庫的作者。
也可以考慮加入Google+社群:
- 官方的Android開發者社群
- Android設計師社群
開源專案
閱讀精心設計的應用程式的原始碼是一個好主意:
- Google I/O Android app。如果你想要複製/貼上程式碼,這裡就可以讓你複製。
- Chris Banes的Photup。
- Reto Meier的Android Protips: A Deep Dive Into Location。演示瞭如何使用位置檢測,碎片和BackupManager。不過我要提醒你,這程式碼已經有一段時間沒有更新了。
當然,還有最終來源:Android source code。
開源庫
一些最有用的開源庫:
- Jake Wharton的ActionBarSherlock。在Android 4.0+上使用本地動作欄,和通過一個單一的API和主題在pre-4.0上的一個自定義實現,來實現這個用於動作欄的設計模式的庫。
- Jake Wharton的ViewPagerIndicator。相容來自於Android Support Library和ActionBarSherlock的ViewPager的尋呼指示符部件。最初基於Patrik Åkerfeldt的ViewFlow。
- Jake Wharton的NineOldAndroids。 在所有平臺版本上——可追溯到1.0——使用蜂窩動畫API的Android庫。
- Sergey Tarasevich的Universal-Image-Loader。強大而靈活的,用於非同步影像的載入、快取和顯示的儀器。
- Koushik Dutta的UrlImageViewHelper。 UrlImageViewHelper通過發現URL的圖片,並自動下載,儲存和快取所有點陣圖,填補了ImageView的空白。
- Chris Banes的Android-BitmapCache。一個專門的快取記憶體,與Android Bitmap objects一起使用。
- Jake Wharton的DiskLruCache。 一個基於磁碟的LRU快取的Java實現,專門針對Android的相容性。
在github上搜尋[android]專案還有很多。此外,DevAppsDirect app是一個開源的自定義檢視,小部件和庫的集合。
GOOGLE I/O TALKS
雖然我們幾乎不可能獲得GOOGLE I/O的門票,但所有的GOOGLE I/O談話可在網上找到,通常用幻燈片的形式。GOOGLE I/O Android部分的會話:2012,2011,2010,2009。
我最喜歡的一些談話:
- Alex Faaborg和Christian Robertson的《Advanced Design for Engineers(2012)
- Chet Haase和Romain Guy的《For Butter or Worse: Smoothing Out Performance in Android UIs(2012)
- Adam Powell和Richard Fulcher的《Navigation in Android(2012)。如果你認為Android的back/up按鈕問題很簡單,那麼看看這個震撼人心的談話。
- Daniel Lehmann,Tor Norbye和Richard Ngo 的《So You’ve Read the Design Guide; Now What?》(2012)
- Chet Haase,Romain Guy和Daniel Sandler的《What’s New in Android?》(2012)
- Xavier Ducrohet和Tor Norbye的《What’s New in Android Developers’ Tools》(2012)
- Patrick Dubroy的《Memory management for Android Apps》(2011)
- Brad Fitzpatrick的《Writing zippy Android apps》(2010)
- Virgil Dobjanschi的《Developing Android REST client applications》(2010)
別再說了,嚇到我了
看到這裡是不是壓力有點大,但是千萬不要絕望。上面有些資源都只是針對初學者的,還有一些則更適合於高階開發人員。
如何有效地掌握資源的幾點建議:
- 首先,讀書。請一定要讀書。這是為了打好Android知識的正確基礎。
- 訂閱部落格,通過RSS參與stackoverflow社群。
- 在Google+中成立一個Android開發圈子。
ANDROID巨星
由於Android的開發者生態系統持續蓬勃發展是基於許多非常優秀的開發者的貢獻,所以在這裡我特別要提到這兩個讓Android開發者更輕鬆生活的巨星。他們是:Mark Murphy和Jake Wharton.。
Mark和Jake為Android開源做了諸多貢獻。所以如果你有幸遇到他們,一定要向他們請教,你肯定會受益匪淺。
當然,其他還有很多Android框架開發人員和設計人員參與了Android的發展。
最後,結尾
現在你已經知道了關於如何寫Android應用程式的所有資訊和工具!但是,你還需要一個偉大的Android UI設計師,不過這就不是本文討論的範圍了。如果你想要開始寫你的第一個Android應用程式,那麼對此一定要有所涉獵。
如果我有遺漏任何重要資源的地方,請在評論中告訴我,讓我們共同進步。
編碼快樂!
譯文連結:http://www.codeceo.com/article/android-resources-programmer-know.html
英文原文:Resources every Android developer must know
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 每個Android開發者必須知道的記憶體管理知識Android記憶體
- 每個 Android 開發者必須知道的訊息機制問題總結Android
- 高效Android開發者必須知道的4個工具Android
- 每一個C#開發者必須知道的13件事情C#
- 15個必須知道的chrome開發者技巧Chrome
- Perl開發者必須瞭解的14個資源
- PDB檔案:每個開發人員都必須知道的
- JS 開發者必須知道的十個 ES6 新特性JS
- 每個Android開發者都應該瞭解的資源列表Android
- 每個Android開發者應該知道的6個SDK和APIAndroidAPI
- 開發者測試:你必須知道 7 件事
- 每個Java程式設計師必須知道的5個JVM命令列標誌Java程式設計師JVM命令列
- Python常用的開源框架,這三個你必須知道!Python框架
- 29個網路營銷必須知道的資料
- JavaScript 開發者必備的7個資源JavaScript
- JavaScript 面試必須知道的 10 個概念JavaScript面試
- Android最火框架集錦以及資源庫Android框架
- Android:隨筆——Android必須知道的註解AnnotationsAndroid
- Web開發者和設計師必須要知道的 iOS 8 十個變化WebiOS
- 每個Web開發者必備的9個軟技能Web
- Vue開發必須知道的36個技巧Vue
- 29 個你必須知道的 Linux 命令Linux
- Python你必須知道的十個庫Python
- 你必須知道的 SmartSql !SQL
- 每個開發者都應該知道的33個JavaScript概念JavaScript
- 每個前端開發者必會的 20 個 JavaScript 面試題前端JavaScript面試題
- 每個Javascript開發者都應當知道的那些事JavaScript
- 每個Java程式設計師都必須知道的四種負載均衡演算法Java程式設計師負載演算法
- 必須知道的28個HTML5特性、技巧HTML
- 15 個必須知道的 Chrome 開發工具技巧Chrome
- 每個 Java 開發者都應該知道的 5 個註解Java
- 每個Java開發者都應該知道的5個JDK工具JavaJDK
- iOS程式設計師必須知道的Android要點iOS程式設計師Android
- 細說反射,Java 和 Android 開發者必須跨越的坎反射JavaAndroid
- 這幾個python常用的庫你必須知道!Python
- JS高階之面試必須知道的幾個點JS面試
- Spring整合RabbitMQ-必須知道的幾個概念SpringMQ
- Node.js新手必須知道的4個JavaScript概念Node.jsJavaScript