推荐一些顶级的Android开发书籍(转)

摘要:
本帖对Android开发菜鸟和中级老兵同样适用,因为本帖重点列出了那些最常用的Android开发资源。  推荐书籍  你或许觉得,都现在了,再去看个什么书来学习Android开发,这方法应该早就过时了。没错,或许你的想法是对的。但是我们还是推荐按照过时的办法来。理由的话,请参看: Programmers Don’t Read Books – But You Should (作者为:Jeff Atwood)  我推荐下面两本书:       The Busy

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

  推荐书籍

  你或许觉得,都现在了,再去看个什么书来学习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 UISmashing UI

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

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

  Devices and Displays  (设备和显示)

  Touch Feedback   (触摸反馈)

  Metrics and Grids (度量和网格)

  Iconography (图像研究)

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

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

  Best Practices for User Experience & UI (a must read) (用户体验和用户接口最佳实践——必读)

  Best Practices for Performance  (性能最佳实践)

  Displaying Bitmaps Efficiently (高性能位图显示)

  Adding Animations (also see NineOldAndroids library) (动画效果——同时也需要看NineOldAndroids库的介绍)

  Tools help (开发工具介绍)

  SDK Samples (SDK示例)

  StackOverflow 推荐资源

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

  Blogs 推荐资源

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

  Android Dev Weekly (博主 Gyuri Grell)。这是一个极好的博客,可以为Android新手提供一手的开发新闻。

  Official Android developers blog。这是一个绝对值得一看的博客档案,里面的很多东西都是干货,比如:Avoiding memory leaks (如何防止内存泄露), Memory Analysis for Android Applications (Android应用程序内存分析).

  Romain Guy。来自Android核心框架组工程师的博客。一旦你开始熟悉Android开发了以后,一定要阅读他写的Android Performance Case Study这篇博文。当然,他的博客还包含一些非技术的内容,比如:great photographer (优秀的摄影师)

  Codependent(博主:Chet Haase),Chet Hasse是Android动画框架的创始人(Youtube上的Android开发者频道上有Chet Hasse的专题节目DevOps——译者注)

  The CommonsBlog (博主:Mark Murphy)

  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.

  Styling Android (博主:Mark Allsion)

  Daniel’s Lew的Coding Thoughts —— 此博客的作者是美国Expedia公司的著名Android应用 Hotels and Flights(正式名称叫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+上的一些社区,例如:

  Official Android dev community (Google+上的官方Android开发者社区)

  Android designer community

  开源库推荐

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

  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年.

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

  Advanced Design for Engineers(工程师设计进阶),演讲人 Alex Faaborg and Christian Robertson (2012年)

  For Butter or Worse: Smoothing Out Performance in Android UIs(Butter项目:让Android UI 性能更加流畅)演讲人: Chet Haase, Romain Guy (2012年)

  Navigation in Android(Android导航)演讲人: Adam Powell, Richard Fulcher (2012)。如果你认为Android的back/up按键问题很好解决的话,看看这个视频你就不会这么想了。

  So You’ve Read the Design Guide; Now What?(学完了设计指南,然后?)演讲人:Daniel Lehmann, Tor Norbye, Richard Ngo (2012)

  What’s New in Android? (Android更新介绍)演讲人:Chet Haase, Romain Guy, Daniel Sandler (2012)

  What’s New in Android Developers’ Tools(ADT更新介绍)演讲人:Xavier Ducrohet, Tor Norbye (2012)

  Memory management for Android Apps(Android应用程序内存管理)演讲人:Patrick Dubroy (2011)

  Writing zippy Android apps(编写敏捷的Android应用)演讲人:Brad Fitzpatrick (2010)

  Developing Android REST client applications (开发基于REST的Android客户端应用)演讲人:Virgil Dobjanschi (2010)

  停!太多了!

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

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

  首先,看书。本文一开始就提到了,你应当要看书。看书能为你打下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开发书籍(转)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇如何调试手机网页通用路由封装协议——GRE,下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

快速打造 react 后台管理系统

前言我相信许多小伙伴可能会满足开发后台管理系统的要求,那么我们如何快速完成这一要求?本文将记录以React为起点创建基本管理系统模板的过程,以加深对React技术堆栈和项目实践的理解。我希望开发这样的项目对每个人都有帮助。如果文章中有错误和错误,也请看小伙伴的评论。提前感谢您的项目介绍。React admin是基于R快速创建React应用脚手架而构建的...

Protobuf动态解析那些事儿

收到protobuf数据后,如何自动创建特定的ProtobufMessage对象,然后对其进行反序列化。有关Protobuf的技术介绍,请参阅Google协议缓冲区的在线帮助页面或IBM developerworks上的文章“Google协议缓冲的使用和原理”。protobuffer的动态分析并没有在谷歌protobuffer官网上介绍。有关实现,请参阅淘宝...

TCL基本语法2

TCL基本语法21、format和scan两个基本的函数,和C语言中的sprintf和scanf的作用基本相同。format将不同类型的数据压缩在字符串中,scan将字符串中的数据提取出来。setnameJacksetage100setworker[format"%sis%dyearsold"$name$age]puts$workerscan$worker"...

Vue 引入 svg文件

在图标显示中,通常使用font真棒图标库,它很简单,只需下载和导入即可。重要的显示:内联块;}2.在src目录下,添加一个名为icons的文件夹,并在icons文件夹下添加索引。js文件和svg文件夹,其中svg文件存储在svg文件夹中。...

【工具技巧】:sublime notepad++ 多行编辑

将光标定位到一行-˃ctrl+shift+↑↓, 上下移动一行。选择-˃ctrl+shift后+↑↓, 上下移动所选区域。再次按6:Ctrl+Shift+Enter在光标前插入一行。...

Oracle 12c新特性(For DBA)

2: Oracle12cIn-MemoryOracle12cIn-Memory提供了一种独特的双格式体系结构,它可以使用传统的行格式和新的内存列格式同时在内存中存储表。与其他NOSQL分片结构相比,OracleSharding提供了优异的运行时性能和更简单的生命周期管理。OracleSharding使用GDS体系结构自动部署和管理分片和复制技术。GDS还提供...