序之前,你必须把一个解 释器与你的环境关联。这种关联位于Ruby顶部的"Windows>Preferences"对话框中的"Installed Interpreters"入口处。
图8.把一个Ruby解释器与环境相关联
对于你正在使用的Ruby版本,你要把"Location"文本域指向bin目录,之后由RDT来选取所有其 它所需要的信息。一旦你关联了解释器,那么你就为运行应用程序作好了预备。九、 运行Ruby 应用程序运行一个Ruby应用程序实际上类似于运行一个Java应用程序。你可以使用Run菜单来 创建一个Run配置,见下图9。
图
9.
在RDT中建立一个Run配置
当你运行应用程序时,RDT将把控制切换到Ruby解释器,然后在Eclipse工作区底部的控制台窗 口内运行应用
程序,见下图10。
图10.在RDT内运行一个Ruby应用程序
这个实例显示了运行一个控制台应用程序,但是运行其它类型的应用程序(如
GUI程序)的方 式与此相同。 十、 用RDT调试一个IDE要求实现的最要害的特征之一是有效地调试你的应用程序的能力。 Ruby解释器包括一个命令行调试器,但是,在如今的图形工具时代有谁会使用一个命令行调试 器?幸好,Ruby解释器还通过一特定(可配置)端口来广播其调试信息,而就象RDT这样的工具 能够听取该端口并且提供开发者们期望的调试支持类型。为了在RDT中调试一个Ruby应用程 序,我们要象上面创建的Run配置一样创建一个Debug配置。然后,你可以通过点击左边的沟 槽设置一个断点并使用调试器来启动应用程序。就象在Java技术中一样,IDE将询问你,是否你 想要切换到调试视图下。假如你愿意,则你将看见类似下面图11所示的内容:
图11.在RDT中调试Ruby应用程序
RDT中支持与Java技术调试相同的调试级别。左上边的格子显示出当前执行的线程,右上面的 格子显示出变量的值。就象在Java编程语言中一样,你可以进一步分析对象以观看它们内在的 成员变量值。中间左边的格子显示当前正运行的应用程序的
源代码,中间右边的格子显示 Outline视图-它在这里担当编辑器的作用,答应你通过点按一个标识符来进行导航。Debug窗口 的底部显示出Ruby解释器在端口1098上广播的调试信息,而由RDT在该端口上听取调试信 息。 调试器支持是RDT的特色。就算你有一个具有优秀的Ruby支持的编辑器,你仍然必须依
靠命令行调试器来调试你的应用程序。拥有一个具有全面功能的调试器将会大大提高软件的生产效率。 QQRead 推出数据恢复指南教程 数据恢复指南教程 数据恢复故障解析
常用数据恢复
方案 硬盘数据恢复教程 数据保护方法 数据恢复
软件 专业数据恢复服务指南 十一、 测试
作为Java开发者最难实现的Ruby特征之一是动态类型化。假如你习惯于一种强类型化语言,那么动态类型化看上去似乎有点混乱。DT答应各种高级元编程技巧-这在一种强类型化语言中是很难或不可能实现的。当然,你可以放弃编译时刻类型检查的安全设置。那么,是否有一个方法能够实现两种世界的最佳结合呢?单元测试应该是每一种语言必须实现的,但是它在动态语言中非凡要害。单元测试比编译揭示了更多的内容。事实上,你应该改变在单元测试和编译之间的关系上的观点。最近,一位高级软件开发专家认为,"在今后的五年内,我们会把编译作为单元测试的一种弱的实现形式"。单元测试能够提供证实(verification)-编码将如期实现,而不是仅仅进行你输入内容的语法检查。考虑到单元测试在Ruby世界中的极端重要性,你一定会希望RDT能够使得单元测试易于运行。的确如此!单元测试被包括在Ruby内,因此你不必下载任何其它的扩展。Ruby库中包括了一个TestCase类和一个TestSuite的概念。你可以象创建任何另外的Ruby类一样来创建你的单元测试,从Test::Unit::TestCase中子类化你的测试。列表1是一