InfoQ

新闻

CodeGear发布Ruby/Rails IDE——3rdRail:纳入动态方法智能完成功能

作者 Scott Delap 译者 郑柯 发布于 2007年9月25日 下午7时30分

社区
Ruby
主题
工件和工具
标签
Rails

CodeGear刚刚发布了他们的Ruby/Rails IDE 3rdRail。该IDE关键功能包括:

代码导航:3rdRail能够辅助开发人员对应用程序结构进行快速高效的遍历……它理解RoR应用的工作机制,开发人员只要关注相关给定部分的代码就可以了。

CodeGear Commanders:CodeGear Commanders提供一个集成于IDE中并可以快速访问的命令行界面,它能够发挥RoR命令行的强大功能,完成对代码生成器的调用并可执行其它功能。命令输出带有超链接,因此点击任何生成的文件或文件夹,就可以将其在IDE中打开。

智能代码自动完成:3rdRail的代码自动完成功能集成了多个强大的特性,可以自动补全方法和参数名称,并对语法进行检查。3rd Rail能够理解开发人员正在进行的工作的上下文,并根据惯例和语义对开发人员可能输入的代码进行预测。3rdRail并不是简单地给出包括几百个方法的弹出窗口就算了,而是可以提供正确的选项。在运行时创建的方法也被纳入了3rdRail的代码自动完成功能的范畴。

重构:3rdRail囊括了特为RoR准备的技术,可以让开发人员改进并简化应用程序的设计。使用3rdRail中的重构工具,开发人员可以在不改变运行结果的前提下对应用代码进行重新组织。

Web开发工具:Mozilla浏览器、JavaScript调试、文档对象模型(Document Object Model,DOM)检查、请求监控以及其它工具都集成在3rdRail中,开发人员可借助它们来编辑和管理Web站点的所有产物。

InfoQ与CodeGear产品和战略副总Michael Swindell以及3rd Rail的开发主管Joe McGlynn一起,对新版本的IDE进行了讨论。他们提到,CodeGear发现这段时间以来,商业软件开发人员和企业级软件开发人员对Ruby on Rails的兴趣有明显提升。这就是让他们投入对3rd Rail开发的风向标。该项目一开始,开发团队的每名成员都将自己沉浸在RoR开发人员的角色之中。在这个过程里,他们识别出一系列作为RoR初级开发人员所能触及的痛处。

接下来InfoQ问到3rdRail对日渐流行的JRuby的支持情况:

在安装程序运行过程中,可以对Ruby、Rails、MySQL以及Interbase的版本进行选择。所支持平台包括Windows、Linux和OS X。开发人员通过配置他们的IDE可以使用之前安装的Ruby或JRuby版本。每个项目的目标平台也可以有所不同。

话题接下来转向了3rdRail作为纯Ruby IDE的能力。目前针对NetBeans也有类似的问题。McGlynn的回答是:要制造一个伟大的Rails IDE,首先要制造一个伟大的Ruby IDE。对Ruby的支持包括提供编辑功能,提供调试器,内嵌IVR,以及对gem的支持。

InfoQ接下来问到3rdRail在开源方面的问题。McGlynn说:

对3rdRail来说,开发团队从Eclipse平台开始着手,而不是Eclipse的IDE。这里面没有Java什么事儿。团队通过检查 RadRails和DLTK提供的一些基础代码,最终决定对DLTK进行扩展。CodeGear发现与DLTK团队一起合作是很快乐的事情,并且有两名 CodeGear的雇员是DLTK项目的提交者(committer)。在平衡有版权保护的代码与提交回DLTK的开源代码这个问题上,任何与Ruby相关的代码都提交回去了。3rdRail专用的工具被保留为产品的组成部分。

在3rdRail提供的创新特性中,能够感知项目的命令行窗口是其中之一。Swindell表明了包含这个功能的原因:

Rails大量使用了命令行脚本。Commander保持了这种能力,并以智能化的方式将其包含在IDE中。在一般命令行脚本功能基础之上,使用CTRL +Space快捷键,可以自动完成命令和选项。除支持Rails的全部命令以外,Commander还支持Capistrano和Gems。

讨论接下来转向了代码的编辑和导航功能上。McGlynn指出Rails做了很多对一般开发人员不可见的底层工作。CodeGear希望用户在对代码进行编辑和导航时能够知道到底发生了什么。这样做带来的结果是:对诸如finder方法之类的动态方法,编辑器也能够实现代码自动完成功能。内置导航工具理解 Rails的分发路径,并对其进行跟踪。使用CTLR+ALT+N快捷键,能够将你导航到下一个分发点。在编辑的透视图(Perspective)中,还提供对调用层次视图的查看。

最后,Swindell被问及关于竞争对手NetBeans IDE对Ruby/Rails之支持的看法:

3rdRail从一开始就是作为纯Ruby/Rails IDE进行开发的。3rdRail包括一系列NetBeans没有的特性,比如对动态运行时方法的代码自动完成。

如果购买3rdRail,附带的许可证包括一年升级支持。第四季度发布的版本中将包括提供对Rails特定调试等功能。

查看英文原文:CodeGear Releases Ruby/Rails IDE with Intelligent Completion of Dynamic Methods
译者简介:郑柯,目前任职《程序员》杂志社高级编辑,有志于在中国的软件开发业界推广Agile的理念和方法论,笃信以人为本,关注Ruby,关注敏捷,关注人。参与InfoQ中文站内容建设,请邮件至china-editorial[at]infoq.com
试用感觉 发表人 snow zhang 发表于 2007年9月25日 下午9时34分
  1. 返回顶部

    试用感觉

    2007年9月25日 下午9时34分 发表人 snow zhang

    试用了一下,200多美金感觉只是Netbean 的Ruby/Rails功能+ eclipse ATFF, 3rdRails还是任重道远啊。

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。