分类: 嵌入式
2012-09-12 21:55:18
随着智能手机的普及,对智能手机上应用的开发受到越来越多人的关注。《Learning Android》这本书就是用来介绍如何在Android系统上开发应用的入门书籍。和其他Android开发类书籍相比,这本书有几方面自己的特色,下面一一介绍。
首先,这本书的最大特色就是,全书以一个类似于Twitter的应用Yamba为例贯穿始终,从零开始构建这个应用的每个细节,直到它成为一个各方面都很齐备的,能够完全实现当初设想的功能的应用程序;而在这个过程中,关于构建Android应用的流程、顺序和方法等诸多问题都已经被包含在其中。之前阅读到的Android开发类书籍更多地是像介绍集成开发环境一样围绕Eclipse展开对开发Android应用的叙述,而介绍的实例往往互相缺乏关联,只是与当前介绍的功能相关;本书能够利用一个项目将对这些功能的介绍串联起来,的确让人眼前一亮,也是给我留下最深刻印象之所在。
其次,本书各个章节之间衔接自然,便于读者从整体上把握构建Yamba的过程。例如,本书从第6章开始介绍构建Yamba的过程,一开始的6、7两章自然是关于UI界面的建立;而一旦这些构建成功,我们就在考虑其内核该如何实现,而恰巧从第8章开始就将介绍这些内容。第8、9两章分别介绍了十分重要的关于Android后台服务及数据库SQLite的知识,而10~12章分别介绍了列表与适配器、广播接收器及内容提供器逐步完善我们的应用Yamba的功能。基本的功能都实现了之后,用户可能会希望对应用加入一些令人感兴趣的的小功能,例如显示用户位置等,而第13章适时地通过系统服务介绍了该方面的内容。全书最后的两章则是试图从更深的层面让读者理解Android应用整体与部分的关系。值得一提的是,虽然Yamba这个应用是一步一步建立起来的,但每到一步得到的应用从当前可实现功能来说也是完整的,而不是直到最后才得到一个可用的程序,这一点想必对很多只想借鉴某些方面功能的开发人员而言是十分有利的,因为可以阅读足够短的篇幅就获得实现的方法。
最后说说这本书值得称道的另一个地方,对代码的不断重构。随着新的功能的提出,将有新的代码被加入。不过,代码之间有重复的部分,这不是我们希望看到的;另外新加入的功能也不是说简单的加法运算,代码的设计应该有所更新。我们欣喜地看到本书的作者考虑到了这一点并在第8~10章的最后对代码进行了重构,这一点值得读者在进行其他Android应用开发的时候有所借鉴。
应该说,作为一本入门级的Android开发类书籍,《Learning Android》给出了不错的学习过程,在此向大家进行推荐。另外提醒一点,在阅读本书之前,读者最好对基本的Java使用有所了解,因为为了节省篇幅快速进入项目介绍书中对于这部分是没有介绍的,不过相信有高级语言程序设计经验者对于这些是不会感到困难的。