Data+AI时代,如何打造下一代数智平台? 了解详情
写点什么

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

  • 2007-09-25
  • 本文字数:1963 字

    阅读完需:约 6 分钟

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

2007-09-25 19:301207
用户头像

发布了 479 篇内容, 共 171.0 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

千字带你了解什么是 RPC 协议

踏雪痕

RPC 3月程序媛福利 3月月更

如何在 Python 中反转字符串?

Ethereal

向工程腐化开炮|资源治理

阿里巴巴终端技术

Java android 资源管理

阿里云神龙AI加速引擎帮助vivo将训练性能提升30%-70%

阿里云弹性计算

AI gpu 神龙架构 加速引擎

一种小程序弱网离线优化的思路

阿里巴巴终端技术

小程序 弱网 体验优化

《人民日报》刊文:天翼云持续创新为数据安全保驾护航

天翼云开发者社区

智能家居市场白热化,小程序助力生态合作新模式

Speedoooo

小程序生态 智慧小区 小程序容器 智慧家居 智慧物业

如何设计良好的技术项目文档结构

老张

项目管理 交付质量

聊聊 Pulsar:编译 Pulsar 源码并搭建源码环境

老周聊架构

云原生 Apache Pulsar 3月月更

flask POST请求,数据入库,文件上传,一文看懂,3天掌握Flask开发项目系列博客之三

梦想橡皮擦

3月月更

拥抱国产云桌面,焱融科技与酷栈科技完成产品兼容认证

焱融科技

云计算 分布式 云原生 高性能 文件存储

云原生中间件 -- Redis Operator 篇

Daocloud 道客

redis 云原生 中间件 云原生中间件

作业五

Geek_f3e842

架构实战营

WMS系统与ERP仓储管理的差异

源字节1号

开源 后端 前端开发 WMS系统 ERP系统

天翼云供应链API安全治理实践获“优秀治理实践奖”

天翼云开发者社区

每秒百万条信息查询天翼云助力江苏核酸检测信息查询

天翼云开发者社区

无影云电脑支持企业快速实现居家办公

阿里云弹性计算

远程办公 数据安全 无影云电脑

东数西算加快云网与数据融合天翼云架起云间高速

天翼云开发者社区

天翼云联手平凯星辰共建开源分布式数据库实验室

天翼云开发者社区

终端常用快捷键

刁架构

终端 快捷键 iterm2

确保数据中心物理安全的五种方法

Ethereal

CVE-2022-22947 远程代码执行漏洞复现分析

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

Python 递归函数返回值为 None 的解决办法

AlwaysBeta

Python 递归

阿里IM技术分享(七):闲鱼IM的在线、离线聊天数据同步机制优化实践

JackJiang

即时通讯 IM im开发

基于 EventBridge 构建 SaaS 应用集成方案

阿里巴巴云原生

云原生 SaaS

龙蜥开发者说来了,来看看社区一周动态还有什么? | 3.07-3.11

OpenAnolis小助手

开源 开发者 龙蜥社区 一周动态

3天掌握Flask开发项目系列博客之二,操作数据库

梦想橡皮擦

3月月更

云原生网络利器--Cilium 之 eBPF 篇

Daocloud 道客

云原生 ebpf cilium

欧拉的奇异之旅·共赴开源时代

白洞计划

使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头

汪子熙

JavaScript 前端 WebRTC 摄像头 3月月更

Docker Shim 被移除,K8s v1.24 升级该怎么办

Daocloud 道客

Docker Kubernetes CRI-Dockerd

CodeGear发布Ruby/Rails IDE——3rdRail:纳入动态方法智能完成功能_Ruby_Scott Delap_InfoQ精选文章