使用Eclipse插件Ruby Development Tools - 编程入门网
并且介绍 了 Ruby 库的需求。在阅读这本书的同时,还可以阅读 Dave Thomas 撰写的 Agile Development with Ruby on Rails,其中介绍了 Ruby on Rails。
获得 RDT 既然已经在计算机上安装了可以 工作的 Ruby 版本并且获得了文档,现在就需要 RDT 了(参阅 参考资料)。这个 Eclipse 插件提供了 许多特性,您在编辑代码时会慢慢熟悉这些特性。RDT 是一个标准的 Eclipse 插件,具有特性和插件, 所以可以将 zip 文件直接解压缩到 Eclipse 文件夹。存档文件中的路径会建立目录结构。 现在 可以创建 Ruby 项目了(参见图 1): 图 1. 创建新的 Ruby 项目 与 Java 技术相比 ,Ruby 对名称和目录结构的要求宽松多了。在 Ruby 中创建一个项目实际上只是创建一个目录和一个 .project 文件(这里不需要 .classpath 文件,因为 Ruby 没有类路径)。与 Java 技术相比,另一个 显著差异是 Ruby 项目向导并不创建显式的 src 和 bin 目录。Ruby 是解释语言,所以没有输出文件夹 。如果项目比较小,那么可以将 Ruby 源代码文件与项目文件放在同一个文件夹中。也可以创建自己的目 录结构。您会发现,与 Java 语言相比,Ruby 不太关心目录结构。 接下来,需要一个 Ruby 源代码文件。没有专门用于创建 Ruby 源代码文件的向导。与 Java 技术不 同,对于 Ruby 源代码文件的结构没有什么要求,所以要创建 Ruby 文件,只需使用项目的右击菜单创建 一个新文件。 图 2. 创建 Ruby 源代码文件 使用Eclipse插件Ruby Development Tools(3)时间:2011-10-21 IBM Neal Ford不要忘记在文件名 后面加上标准的扩展名 .rb,这是一般的 Ruby 扩展名。创建 Ruby 文件应该会打开 Ruby 透视图。 图 3. 创建 Ruby 源代码文件会打开 Ruby 透视图 Ruby 透视图还提供 一个大纲视图,这与 Java 透视图提供的大纲视图相似。与 Java 大纲视图相似,它允许导航 Ruby 源代 码文件的元素。在图 4 中,raise_salary_by 方法在大纲视图和源代码视图中高亮显示。 图 4. 大纲视图允许在源代码文件中进行导航 与其他复杂的插件一 样,RDT 也在 Window > Preferences 对话框中增加了定制特性。这个首选项对话框如图 5 所示。 图 5. RDT 的定制首选项 首选项菜单项允许 修改语法高亮显示方式、格式化(在 Ruby 中标准的缩进是两个空格,不是四个,所以要做某些调整)等 等。它还允许定制编辑器模板以及选择解释器。 使用Eclipse插件Ruby Development Tools(4)时间:2011-10-21 IBM Neal FordRDT 编辑器 在 Java 技术环境中,我们已 经习惯了高级的编辑器特性,这使我们在转移到没有提供这些特性的其他环境时不太适应。Ruby IDE 缺 乏的特性之一是 Content Assist,这种特性针对标识符进行上下文相关的查找。RDT 编辑器对 Ruby 代 码提供了 Content Assist。 图 6. RDT 编辑器提供 Content Assist RDT 编辑器中的 Content Assist 没有 Java 环境中那么有针对性,因为 Ruby 支持动态类型。在 Ruby 中,不能将类型 赋给变量或者方法返回值。标识符上下文在运行时决定类型。Ruby 使用所谓的“duck typing” —— 也就是说,如果它接受“鸭叫”消息,那么它一定是鸭子。 对于那些习惯于强类型语言的人来说,这可能像是一种阻碍,但是这种弱类型耦合使 Ruby 语言能够实现 某些更强大的特性。例如,在 Ruby 中可以编写一个异常处理程序,如果调用一个不存在的方法就会触发 这个程序,这个异常处理程序可以动态地合成这个方法并且调用它。在强类型语言中很难实现这种元编程 。 Content Assist 弥补的特性之一是 Ruby 对标识符使用的特殊命名约定。例如,在 Ruby 中, 所有成员变量在第一次使用时才存在,而且都由 @ 符号 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |