级别: 初级 Michael E. Hlasyszyn, 本硕连读研究生, Worcester Polytechnic Institute
2007 年 6 月 15 日 本文来自于 Rational Edge:如果您是一个正在寻找构建 Web 应用程序的新的问题解决工具的 Java 开发人员,那么您将会从 Stuart Halloway 和 Justin Gehtland 的新书,Rails for Java Developers 中学到很多。本书评解释了为什么。
|
Rational Edge 读者的新论坛
|
|---|
| 在本文的最后,您将找到一个特别为 Rational Edge 电子杂志的作者创办的新论坛的链接。准备添加一些您对在我们的网页上找到的本文或其他主题的想法。 |
Rails for Java Developers
作者:Stuart Halloway,Justin Gehtland Pragmatic Bookshelf,2007 年 ISBN: 097761669X 售价:US$34.95 296 页
Rails for Java Developers,就像它的名字所暗示的,是一本面向希望把用 Ruby 程序设计语言撰写的非常流行的 Rails 框架添加到问题解决工具集中的 Java 开发人员的书籍。该书讨论了关于 Rails 的公认“非常好的”想法,以及有争议的想法。这篇介绍是为了吸引 Java 开发人员。该书讨论了 Model-View-Controller 模式、单元测试、Web 服务,安全性和对有效的 Web 应用程序的构建起关键作用的许多其他主题。
如果您是一个想要学习 Rails 的 Java 开发人员,那么该书将为您提供技能和 Rails 概念之间极好的映射关系。然而,该书只对 Rails 进行介绍,因此,如果您想学习与 Java 不相关的 Rails 概念,那么其他书可能更适合您。
教程
该书使用了两个应用程序来示范 Java 如何适应于 Rails。第一个应用程序,名为 People,全部都在第一章节中。它是基本的 Rails 能力的示范。虽然作者让读者体验到了可以用 Rails 表现出的 Java 能力,但是关于 People 中使用的 Ruby 和 Rails 代码的说明极少。
第二个应用程序,名为 Rails Exploration Testing,或者 Rails XT,包含了从存储库中得来的代码片段,用来示范 Rails 的能力。该书,在介绍性章节之后,就依靠 Rails XT 和一个类似的 Java 代码存储库、Java XT,来分别示范 Rails 和 Java 之间的相似性及差别。Rails XT,不像 People,不针对任何特殊的问题领域。这令其更难将新的 Rails 概念应用于您正着手解决的实际问题。
有效的书写,但有一些缺点
作者用许多技术与读者交流。许多技术非常有效,并减少了读者关于新概念的学习曲线。一些其他的技术不太有效,但仍设法向读者传达重要的概念。
例如:该书极力地强调了 Java 开发技术,并且介绍了如何将这些技术映射到 Rails 上。Halloway 和 Gehtland 想让读者了解,有许多用不同工具解决一个问题的方法。对 Java 知识的分享使您比较地了解 Rails 的“新世界”,而不是从头开始。在讲授新概念的时候,作者在 Java 和 Rails 实例中使用了许多商业环境中所要求的实践标准。质量标准和概念转换的使用对书写良好的代码的审阅非常有效。这将令读者花更多的时间来思考围绕代码的讨论,而不是代码本身。
期望读者了解许多现在的 Java 主题。这些主要的 Java 概念是 Struts(创建 Java Web 应用程序的开源框架)、Hibernate(将面向对象领域模型映射到传统关系数据库上的框架),和 Axis(构建 SOAP 处理器的框架)。是的,该书是特别针对 Java 开发人员的,所以,如果不熟悉这些 Java 概念的话,要理解该书就更麻烦一些。至少,作者用健壮的讨论来说明每一个 Java 实例,从而将误解最小化,而且充分的讨论将减少读者为了完全理解作者所使用的 Java 中的细节,而产生的压力。
尽管如此,该 Java 讨论以很高的代价进行:Rails 的概念讨论起来不太有效。比起对转换中将要使用的 Rails 概念的说明来说,要投入更多的时间来说明全面的 Java 示例,以及向 Rails 的转换。
另一个缺点是,在您阅读的过程中,您需要熟悉 Ruby 程序设计语言。有一章几乎直接地专注于 Ruby 语法、类型和类定义、控制流和继承,通过使用类似的 Java 结构来使 Java 开发人员更加熟悉 Ruby。一些附录提供了对于映射到 Java 副本的 Ruby 和 Rails 定义的快速帮助。任何进一步的定义或 Ruby 具体的语法都需要从另一个文本引用而来,或通过 Internet。许多 Rails 概念也没有出现在该书中。由于该书是用于概念转换的,因此它没有深入地说明具体的 Rails 概念。如果不熟悉 Rails 和 Ruby 的话,这本书就更难以阅读了。
有帮助的细节
在阅读大多数技术书籍时,我经常找不到地方,或者忘记了刚刚读过的词。在该书中,作者在专栏的空白处为您可能需要提醒的具体术语提供快速提示。您可以很容易地查到术语,并查看它们旁边段落中的定义。侧栏还为可能没有直接映射到 Java 的 Rails 主题提供有帮助的提示和说明。参考术语和侧栏许可您在不需要大量搜索的情况下,重查术语或概念,因此我可以快速地回到手边的讨论上。
在该书中,您还可以看到一些幽默的小插曲。为了使从 Java 到 Rails 的转换的经历重复性更少,作者使用了微妙的 —— 有时候明显的 —— 幽默。这消除了也许只有有经验的 Java 开发人员可以理解的长长的解释。也就是说,在一本主要针对 Java 开发人员的书中,读者经常可以涉及到玩笑,这使得讨论读起来几乎像是与同事的交谈。
为什么介绍该书?
将该书与其他 Rails 书籍区别开是由于它与 Java 有极大的关联。虽然它假设您在打开该书之前就熟悉许多 Java 概念,但是该假设允许有意的读者关注 Rails 新的和有趣的部分。因而,该书是想要学习 Rails 来开发 Web 应用程序的有经验的 Java 程序设计人员的理想参考。(它不是带您利用 Rails 构建示例 Web 应用程序的教程样式。)
该书针对于 Rails 的基础底层概念,以及它们如何直接与相应的 Java 概念相关联。如果您对 Ruby 程序设计语言或 Rails 框架没有经验,那么在接触该书之前,对这些领域进行一些调查可能会有帮助。另外,寻找新的问题解决工具来构建 Web 应用程序的 Java 开发人员将会喜欢阅读该书,并且将其概念直接与他们的工作关联起来。
现在对本文进行讨论!
尊敬的读者:现在开办了一个特别为 Rational Edge 的文章创办的新论坛,现在您就可以分享您对本文或本期杂志或以前杂志中的其他文章的想法。阅读世界各地您的同行们所说的内容,生成您自己的讨论,或者加入正在进行的讨论。单击 这里 开始。
参考资料
关于作者  | 
|  | Michael Hlasyszyn 是伍斯特工学院计算机科学系的高年级学生,他将在 2008 年 5 月完成它的本硕连读计划。他希望寻求环境、航天或深海勘探方面的职业。在闲暇的时间,他喜欢读书、旅行,并且参加足球和乒乓球比赛。 |
对本文的评价
|