每个Android开发者必须知道的资源集锦
英文原文:Resources every Android developer must know
随着 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://原网站已经失效/article/android-resources-programmer-know.html
翻译作者:码农网 – 小峰