写点什么

NetBeans:Ruby 开发者的新伙伴(第三部分)

  • 2008-03-27
  • 本文字数:2699 字

    阅读完需:约 9 分钟

本文是 NetBeans & Ruby 系列文章的最终章。前两篇文章介绍了 NetBeans 对 Ruby 的支持,请移步这里(第一部分第二部分)。

本文将介绍前两部分没有提及的特性,还将介绍众多可以使得Ruby 开发更简单、更有趣的扩展插件。

附加提示和快速修补

Tor Norbye,NetBeans 中负责 Ruby 支持的主程序员,正努力提升编辑器中智能快速修补的数量。其中一些直接可用,而另一些则需要额外安装。之所以这样是因为它们的创建载在 NetBeans 本次发布以后,而且它们极有可能包含在下一个 NetBeans 的发布版之中。让我们通过一些简单的代码范例来看看那些常用的快速修补。

如果你使用了并不被推荐的用法,反对提示就会出现。多亏这些警告和提示,可以确保你的代码符合最新的 Ruby 编码标准。

如果你在一行中写了太多的代码,并想要将其扩展至多行,你可以使用如下的快速修补:

代码将会扩展至多行并被自动格式化:

接下来的快速扩展是作为插件形式的,可以在更新中心找到。你可以使用插件管理器(Tools | Plugins)来获得它们——插件的名字叫做“Ruby Extra Hints”。

IDE 可以检测出你是否“遮蔽”了一个变量。例如在一个嵌套循环中:

这个情况可以有多种解决方法,因此你可以选择你认为合适的选项。如果你不想再看见此类提示的话,也可以将其禁用。

你还可以简单地将一个 do/end 块转换为一个{}- 块。

IDE 也将会在代码风格方面给与你帮助——当然这依然需要你编写清晰可读的代码,但是你将会得到建议(对于那些从其他语言转至 Ruby 的人很有帮助)。

有些快速修补是仅针对 Rails 应用的。例如,如果一个控制器缺少了相对应的查看文件 action 的话,将会出现如下提示:

你还可以利用一些快速修补来重构你的代码——比如引入新的变量、从已有代码中提取方法等等:

所有快速修补都可以在选项对话框中启用或禁用,因此如果哪个弹出的提示搞得你很烦的话,到 Tools | Options | Ruby | Hints 中禁用它即可。

除此之外还有一些其他的快速修复,你可以访问 Ruby Hints 的 Wiki 页来获得全部的列表: http://wiki.netbeans.org/RubyHints

自定义颜色主题

众多 Ruby 开发者都习惯于使用 vi 和 emacs 这类编辑器。这些编辑器都是以黑色作为背景色,这使得以白色作为默认背景色的 NetBeans 可能让你觉得有些过于明亮。幸运的是 NetBeans 支持颜色主题,这里有两个主题和终端文本编辑器很相似:Norway Today 和 City Lights。你也可以创建自己的颜色主题。在 Tools | Options | Fonts & Colors 来修改颜色主题,改成你最喜欢的样子。

数据库相关工具

NetBeans 的数据库工具并非 Ruby 独有。你可以在 IDE 中直接管理数据库。自带的 JDBC 驱动提供了对 JavaDB(也被称为 Apache Derby)、MySQL 和 PostgreSQL 的支持,但是在你指定 JDBC 驱动的位置和数据库的 URL 以后,你便可以连接任意其他数据库。你可以浏览数据库的表及其结构、在带有语法高亮的编辑器中编写 SQL 查询、运行查询并浏览结果。你也可以创建新表或者备份 / 恢复你的表数据。全部这些功能都是自带的——所以你不需要安装任何附加的插件。如下面屏幕截图所示,数据库管理在 Services 标签下可以找到。

## RSpec

NetBeans 也提供了对 Rspec 的实验性支持。RSpec 是一个行为驱动开发框架,其提供的工具可以允许在代码级别通过可执行场景及可执行示例来表达用例。一旦你通过 Ruby Gem(使用 Tools | Ruby Gems)安装了“rspec”,你的 Rails 项目中将会包含一个用来包括规格文件的 spec 目录。如果你打开其中一个(你可使用之前介绍过的 Goto Test 动作),就可以使用 Run File 来运行规格。这样可以使用 rspec 来运行当前的规格文件。

附加插件

你可以安装其他实验性插件来使得 Ruby 编码更加舒适:

  • 拼写检查——后台拼写检查器,可以高亮注释中拼写错误的单词
  • 矩形选取——你可以以矩形来选取一段代码
  • 制表符——这个插件可以高亮代码之中的所有制表符以便于来简化制表符使用
  • 拖尾空格——这个插件会高亮拖尾得白空格
  • 快速文件选择器——将 IDE 的文件选择器替换为一个为键盘操作专门优化的文件选择器
  • 构建监视器——提供对 Hudson 持续构建服务器的监视功能
  • TODO 高亮器——高亮代码中所有的 TODO 标记

最新的关于附加插件的信息可以在 wiki 页上找到: http://wiki.netbeans.org/RubyPlugins

支持 Vi 和 Emacs

尝试去习惯新的键盘快捷键是很痛苦的。然而在 NetBeans 中,你不必放弃你喜欢的编辑器上的使用习惯——有一个插件不只提供了和 vi 类似的键盘快捷键绑定,更提供了和 vi/vim 类似的指令功能。如果你是个 vi/vim 用户,一定要试试看: http://jvi.sourceforge.net/

现在还没有为 Emacs 而打造的插件,然而你可以通过 Tools | Options | Keymap 来启用 Emacs 的快捷键绑定。 ## 截屏录像

有大量的截屏录像来帮助开发者们去学习 Ruby 开发相关的新特性。这些截屏录像也是 NetBeans Ruby 教学单元的一部分。推荐想要尽快学会通过 NetBeans 进行 Ruby 开发的人们都来看看: http://www.netbeans.org/kb/trails/ruby.html ## 其他语言

你还可能想了解 NetBeans 对其他语言的支持情况。很明显对 Java 的支持是所有语言中最高级的,然而除了 Java 和 Ruby 外,你还能得到对其他语言的强力支持。NetBeans 自从 5.5 版本起就已经支持 C/C++ 开发。在 NetBeans 6.0 加入了对 JavaScript 的支持,并且计划在下个版本中对其增强。Groovy/Grails 的支持正在开发中,将计划在 NetBeans 6.1 中以插件的形式发布。你还可以获得 Erlang 和 Scala 等语言的插件。一些老旧语言例如 ASM 也依然支持,因此如果你使用的语言没在所支持的列表中,请搜索相关的插件。

当讨论到语言的时候,应该提一下 Schliemann 项目,它提供了对通用语言的支持。你可以使用 Schliemann 来创建对任何语言的基本支持(包括语法高亮、代码折叠、缩进等特性都是非常容易配置的)。多亏了这个项目,NetBeans 可以提供对很多很多不同语言的支持——并且如果发明了自己的语言,也可以通过 Schliemann 来获得一个 IDE 的良好支持。更多关于 Schliemann 项目的信息,请访问 NetBeans 的 wiki 页面: http://wiki.netbeans.org/Schliemann

更多信息

你可以在 NetBeans 的 wiki 页上找到对 Ruby 提供支持的更多信息。

众多演示和教程请移步 Ruby 文档主页

最后,你可以免费下载NetBeans IDE

你可以选择安装一个只支持Ruby 的简化版IDE(提供一个特别捆绑),或者是支持Ruby 全功能Java IDE。也可以使用Tools | Plugins 在只支持Java 的IDE 中加入对Ruby 的支持。

一定要试试NetBeans 对Ruby 的支持。如果你经常使用Ruby 开发,你就会发现NetBeans 就是你想要的那个IDE。

查看英文原文: NetBeans: Ruby Developer’s New Best Friend (Part 3)

2008-03-27 03:152606
用户头像

发布了 80 篇内容, 共 23.0 次阅读, 收获喜欢 5 次。

关注

评论

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

【ACM出版|稳定EI检索|设优秀论文评选】2025年计算机技术、数字媒体与传播国际学术会议(ICCDC 2025)

搞科研的小刘

数字媒体 计算机技术 传播 信息传播模式

大数据-124 - Flink State:Keyed State、Operator State KeyGroups 工作原理 案例解析

武子康

Java 大数据 flink spark 分布式

CodexField 热度登顶:内容资产化赛道的加速信号

加密眼界

Easysearch 冷热架构实战

极限实验室

easysearch

【IEEE出版,格林威治大学主办】第六届信息科学与并行、分布式处理国际学术会议(ISPDS 2025)

搞科研的小刘

分布式处理 国际学术会议 信息科学

QMS质量管理系统:质检数据如何赋能工厂持续改进?

万界星空科技

数字化转型 智能质检 万界星空科技mes QMS 质量管理QMS系统

Rokid Glasses 移动端控制应用开发初体验-助力业务创新

轻口味

android 智能硬件 Rokid

工业管理 项目管理经验总结(22)

万里无云万里天

项目管理 工业 工厂运维

创作者经济→模型金融化:CodexField 代币逻辑与潜力解构

石头财经

为什么说BeeWorks是适合企业选择的内部通讯系统?

BeeWorks

即时通讯 IM 私有化部署

AI智能体开发!和Kiro、Kimi、PPIO、TEN、memU、MiniMax一起Vibe丨Convo AI&RTE2025

声网

企业如何选择局域网聊天工具?

BeeWorks

即时通讯 IM 私有化部署

黑龙江等保测评:护航企业数字化与合规运营

等保测评

阿里云 RocketMQ 5.0 可观测最佳实践

观测云

RocketMQ

CodexField 热度登顶:内容资产化赛道的加速信号

股市老人

解构 CodexField:创作者经济到模型金融化的代币逻辑与潜力

BlockChain先知

CodexField 热度破顶:内容资产化赛道迎来加速拐点

BlockChain先知

电通创意发布《2025首席营销官报告》:算法与人性的重构力量

财见

内网聊天软件对B端企业的重要性

BeeWorks

即时通讯 IM 私有化部署

C#/.NET/.NET Core技术前沿周刊 | 第 57 期(2025年10.1-10.12)

追逐时光者

C# .net 微软

柔性LED屏幕租赁的创意应用

Dylan

广告 LED LED display LED显示屏 LED屏幕

工业管理 项目管理经验总结(21)

万里无云万里天

项目管理 工业 工厂运维

AI 语音调研初创 Cookiy AI 融资 700 万美元;软银 53 亿美元收购 ABB 机器人业务,布局物理 AI 丨日报

声网

@Update注解批量更新始终报错

刘大猫

人工智能 云计算 大数据 算法 物联网

GPMI一根线终结电视内卷,长虹和海尔没有说破的秘密

脑极体

AI

CodexField 热度登顶:内容资产化赛道的加速信号

石头财经

夜莺监控设计思考(一)整体定位、架构设计、单进程多进程选择、高可用设计

巴辉特

Nightingale 夜莺监控 开源监控

鸿蒙应用开发从入门到实战(二十一):ArkUI自定义弹窗组件

程序员潘Sir

鸿蒙

哈尔滨二级等保测评:企业安全合规的关键支撑与实践方向

等保测评

云栖实录|人工智能+大数据平台加速企业模型后训练

阿里云大数据AI技术

人工智能 大数据 阿里云

“不要通过共享内存来通信”——深入理解Golang并发模型与CSP理论

poemyang

golang 并发编程 channel

NetBeans:Ruby开发者的新伙伴(第三部分)_Java_Roman Strobl_InfoQ精选文章