http://www.open-open.com/news/view/1f55540

随着 Android 平台市场份额的持续猛增 , 越来越多的开发者开始投入 Android 应用程序的开发大潮。如果您是一位 2013 年刚刚入行的 Android 开发新兵,恭喜你,因为这个平台已经在过去几年里变得愈发成熟了,绝对值得住你全情投入。目前来看,Android 现成的开发资源早已经汗牛充栋,我们这篇帖子,就是要在浩如烟海的资源中挑出最重要的那些,呈现给你。

本帖对 Android 开发菜鸟和中级老兵同样适用,因为本帖重点列出了那些最常用的 Android 开发资源。

推荐书籍

你或许觉得,都 2013 年了,再去看个什么书来学习 Android 开发,这方法应该早就过时了。没错,或许你的想法是对的。但是我们还是推荐按照过时的办法来。理由的话,请参看: Programmers Don’t Read Books – But You Should (作者为:Jeff Atwood)

我推荐下面两本书:

The Busy Coder’s Guide to Android Development

  • The Busy Coder’s Guide to Android Development》(Mark Murphy 著)。这本书最大的特色就在于它的覆盖广度(此书有超过 2000 页的篇幅),而且更新频率很高(平均每 2 个月更新一次)。这本书对于快速进化的 Andoird 平台来说,应当是很具有榜样性质的。作者 Mark Murphy 本人还设立了常规答疑环节,这样本书的读者就能够向作者直接提问。本书的示例源代码全部都发布在 github 上面。所以综上所述,强烈推荐。
  • Smashing UI 》(Juhani Lehtimaki 著)。对于那些关注如何做出顶级 UI 设计的 Android 开发者来说,此书无可挑剔。

Smashing UI

developer.android.com 官方开发者站点推荐资源

在动手编写第一个 Android 应用之前,用心读一读 Android Design 章节。尤其是下面的这些文章:

同时也请下载 Downloads 部分的代码,这些代码囊括了 Android 图标和控件的设计模板,源文件,样式以及无样式图标等等。

那么读完了这些以后就可以开始编程了么?不,最好连下面的东西也一起读:

StackOverflow 推荐资源

很多 Android 核心框架的工程师,开发者布道师以及 Android 开发专家都会经常到 stackoverflow.com 上助人为乐。以下是关于 Android 最热门问题的清单。我已经订阅了很多高手的 RSS feeds, 例如:CommonsWare (Mark Murphy), Dianne HackbornRomain GuyReto MeierTrevor JohnsRoman NurikAdam Powell (感谢, @remdroid!).

Blogs 推荐资源

很多博客能够提供给你最好最新的 Android 开发资源

Google+ 推荐资源

在 Google+ 尚未成为社交网络的时候,它就已经是 Android 开发资源的一块瑰宝了。以下是一些你应该关注的 Google+ 账号: Tor Norbye (他是 ADT 的开发者之一), Dianne HackbornRomain GuyChris BanesRoman NurikNick ButcherAdam PowellRich HyndmanCyril MottierPaul BurkeJeff Gilfelt.

记住一定要关注 Jake Wharton 这个人,他是 ActionBarSherlock,ViewPageIndicator,NineOldAndroid 以及其他很多著名的开源 Android 库的作者。

同时也请考虑加入 Google+ 上的一些社区,例如:

开源库推荐

以下是一些最有用的开源库项目:

  • ActionBarSherlock,作者是 Jake Wharton。这个库在 Android 4.0+ 版本上通过本地 action bar 实现了 action bar 设计模式,并通过单个 API 和主题在 4.0 之前的版本上做出了一个自定义 action bar 实例。
  • ViewPagerIndicator,作者同样是 Jake Wharton。Paging indicator 组件与 ViewPager 都来自于 Android 支持库和 ActionBarSherlock。他们的最初原型是来自于 Åkerfeldt 的 ViewFlow。
  • NineOldAndroids,作者是 Jake Wharton。这个 Android 库使用 Honeycomb 版本的动画 API,对直到 1.0 版本的 Android 系统全部适用。
  • Universal-Image-Loader,作者 Sergey Tarasevich。这个库具有强大的功能和灵活性,可支持图像的异步加载,缓存和显示。
  • UrlImageViewHelper,作者 Koushik Dutta。 UrlImageViewHelper 可以根据一个 URL 来找到图形,并填充到 ImageView 里,还能实现对图像的自动下载,存储以及位图缓存。
  • Android-BitmapCache,作者 Chris Banes。这是一个很有特色的缓存库,用于缓存 Android 位图对象。
  • DiskLruCache,作者 Jake Wharton。这是一个基于磁盘系统的 LRU 缓存库,主要针对于 Android 平台,用 Java 实现。

github 上搜索[android] 项目,你可以找到更多的开源库。而且,DevAppsDirect 应用提供了很好的功能,去归纳目前已有的开源视图,组件和工具库。

GOOGLE I/O TALKS 推荐资源

总的来说 Google I/O的门票现在已经火爆到了一定程度了,你基本上是不可能买到票去现场的,不过所幸的是,所有 Google I/O的主题演讲都会被放到网上,并且提供 PPT 下载链接。以下是 Goolge I/O Android 相关的所有主题演讲的链接:

2012年, 2011年,2010年, 2009年.

其中一些主题是我非常喜欢的,如:

停!太多了!

如果本贴的内容太过丰富,让你觉得应接不暇,没关系,有些内容是专门针对于初学者的,如果你不是初学者的话,你可以只关注本文中那些相对高级一些的主题。

关于如何有效地选择内容,以下是几点建议:

  • 首先,看书。本文一开始就提到了,你应当要看书。看书能为你打下 Android 开发的牢固知识基础。
  • 订阅本文中提到的博客内容,以及 stackoverflow 的问答内容(通过 RSS)
  • 在你的 Google+ 账户上创建 android-dev 开发圈子(当然,由于某些原因,墙内的朋友们可以在墙内的社交媒体或者论坛上建立自己的 Android 开发圈子——译者注)

Android 巨星

在 Andoird 开发者生态系统的持续繁荣的过程中,逐渐涌现出了许多天赋异禀的巨星级开发人员,尤其下面这两位,他们的工作让其他 Android 开发者们受益匪浅。他们是:Mark Murphy 和 Jake Wharton

Mark 和 Jake 在 Android 开源项目上面贡献良多,可以说早已功成名就。如果你有幸见到他们,一定要请他们喝喝啤酒,表示感谢。(不过根据回帖的情况来看,Mark Murphy 本人不喜欢喝酒,而有一位叫 Chris Bane 的网友愿意帮他喝,所以要请客的话可以直接请 Chris Bane,并且,如果你一直坚持阅读到了现在,那你就明白感谢 Mark Murphy 最好的办法就是去订阅他的博客 CommonsWare——原文作者)。

显然,多数 Google 的 Android 开发者和设计师也为 Android 系统做了很多工作。他们中的部分人在本文中也有提到。

结语:

那就到这儿吧。现在你应该了解了不少开发信息和工具了,这一切都是为了让你写出优秀的 Android 应用程序!好吧,还有一点:你还需要一个优秀的 Android UI 设计师,不过由于本贴是技术贴,这就不在讨论范围之内了。那么现在,你应该做好充分的准备来开始做你的第一个 Android 应用了。

如果你觉得我遗漏了哪些优秀的资源,那么就在评论你留言补充吧,我会定时更新这篇文章的内容的。

祝,编码愉快!

OPEN资讯的更多相关文章

  1. app开发外包注意事项,2017最新资讯

    我们见过很多创业者,栽在这app外包上.很多创业者对于app外包这件事情不是特别重视,以为将事情交给app外包公司就完事了,实际上不是的.无论是从选择app外包公司还是签订合同.售后维护等各方面都有许 ...

  2. 如何选择靠谱的app外包公司,2017最新资讯

    企业在外包开发app之前最纠结的问题就是如何选择一个靠谱的app外包公司.因为一个靠谱的app外包公司非常重要,完全决定了app外包开发的周期.bug.售后服务等各方面问题,可以说app开发外包团队一 ...

  3. [Erlang 0122] Erlang Resources 2014年1月~6月资讯合集

    虽然忙,有些事还是要抽时间做; Erlang Resources 小站 2014年1月~6月资讯合集,方便检索.      小站地址: http://site.douban.com/204209/   ...

  4. [Erlang 0114] Erlang Resources 小站 2013年7月~12月资讯合集

    Erlang Resources 小站 2013年7月~12月资讯合集,方便检索.     附 2013上半年盘点: Erlang Resources 小站 2013年1月~6月资讯合集    小站地 ...

  5. [Erlang 0105] Erlang Resources 小站 2013年1月~6月资讯合集

    很多事情要做,一件一件来; Erlang Resources 小站 2013年1月~6月资讯合集,方便检索.      小站地址: http://site.douban.com/204209/     ...

  6. [Erlang 0103] Erlang Resources 资讯小站

       好久没有写博客,是懒了吗?不是;前面两个月在紧张地推进一个项目,中间积累了一些RabbitMQ和Erlang的东西;本打算在项目结束之后赶紧总结一下,结果老婆怀孕之后生活节奏大乱:早起做饭,晚上 ...

  7. 《IT蓝豹》PlayNewsStandDemo资讯类新闻客户端框架

    PlayNewsStandDemo资讯类新闻客户端框架,支持tab滑动切换,当切换到最左边或者最后边的时候停止滑动 本例子切换tab的效果根据AccelerateDecelerateInterpola ...

  8. xpath实例 --//span[contains(.,'资讯管理')]

    实际例子: 实例一: 不得不说下第一个例子,谢谢selenium论坛的大神门,XPATH还有这种方式的定位,传说是“治疗一切跌打损伤,及text找不到”(Antony群友帮解决的,在此谢谢)

  9. android 资讯阅读器(二)

    接着上次的博客,上次移植完了tab以后整个app的框架就算是定下来了. 本次目标: 1.数据的获取与展示(ListView) 2.官方的下拉刷新效果(SwipeRefreshLayout) 3.数据接 ...

  10. android 资讯阅读器

    最近找申请到了一个不错的接口 , 非常适合拿来写一个资讯类的app. 现在着手写,随写随更.也算是抛砖引玉.烂尾请勿喷.╭(╯^╰)╮ android 资讯阅读器 第一阶段目标样式(滑动切换标签 , ...

随机推荐

  1. arcgis离海距离的计算

    1.利用arctoolbox——要素——面转线工具,将县界提取出来. 2.对线要素编辑,利用“分割”工具对边界截断,而后融合成一条海岸线 3.利用分析工具——领域分析——近邻分析计算点到海岸线要素的距 ...

  2. MYSQL主键存在则更新,不存在则插入的解决方案(ON DUPLICATE KEY UPDATE)

    经常我们使用的最简单的数据库操作就是数据的更新,删除和插入,对于批量删除和插入的方法相信大家都很清楚,那么批量更新估计有的人就不知道了,并且还有批量插入,在插入时若有主键冲突则更新的操作,这在EAV模 ...

  3. [iOS]MVVM-框架介绍

       我于 2011 年在 500px 找到自己的第一份 iOS 开发工作.虽然我已经在大学里做了好几年 iOS 外包开发,但这才是我的一个真正的 iOS 开发工作.我被作为唯一的 iOS 开发者被招 ...

  4. Object-c 语法 - NSObject常用方法和反射

    NSObject常用方法 - (BOOL)isKindOfClass:(Class)aClass //判断是否为aClass或者aClass的子类的实例,aClass可以通过[类名 class]获取 ...

  5. Layout Support 获取上下bar的长度

    Layout Support This protocol . You can use layout guides as layout items in the NSLayoutConstraint f ...

  6. -25299 reason: 'Couldn't add the Keychain Item.'

    今天在用苹果官方demo 提供的KeychainItemWrapper类时遇到-25299  reason: 'Couldn't add the Keychain Item.'错误,再4s上可以正常运 ...

  7. Android L Camera2 API 使用实例程序汇总

    在网上发现几个使用Camera API2开发的实例程序,总结一下方便后续参考: 1.Camera2 Basic : https://github.com/googlesamples/android-C ...

  8. 学Lua(上)

    学Lua(上) 在很多游戏中,脚本语言是不可或缺的一部分,很多游戏都使用到了Lua,js,python一类的脚本,脚本语言可以在很多方面给开发进程带来帮助.脚本语言可以作为初始化文件读入变量和游戏数据 ...

  9. c判断括弧是否匹配

    这里我没有用堆栈.直接用一个数组input[SIZE]接收用户的输入,在遍历数组,对数组进行操作.已经匹配好的括弧直接用#号覆盖,最后遍历数组.如果数组只有#号,没有其他元素,则匹配.否则不匹配. / ...

  10. Windows Phone 8内存控制研究 之 LonglistSelector使用陷阱

    最近工作中常常被问到如何降低WP内存使用,便再一次开始研究内存问题,首先发现了LonglistSelector使用的一个常见问题: 概述 若将Longlistselector 控件的ItemsSour ...