2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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:152650
用户头像

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

关注

评论

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

用二维码展示信息,有哪些常见应用场景

草料二维码

PME算法基础及其Python实现

代码忍者

为什么要开发海外电商代购系统?

科普小能手

系统开发 电商系统 海外代购系统 代购系统 代购商城系统

管理者应该具备的几点认知

老张

团队管理 技术管理 职场晋升

冲一下深信服,好像有点简单?

王中阳Go

Go 面试

HyperWorks二维网格划分及拓扑改进

智造软件

Hypermesh 网格划分 有限元

Emeritus硅谷AI深度研学之旅圆满落幕,探索AI前沿投资洞察!

科技汇

突破 RAG 局限,KAG 专业领域知识服务框架正式开源!

可信AI进展

TiDB br日志备份PermissionDenied

TiDB 社区干货传送门

实践案例 备份 & 恢复

10分钟写一个tidb-ai机器人帮你解答tidb问题

TiDB 社区干货传送门

新版本/特性解读

Merge-region 原理及常见问题

TiDB 社区干货传送门

故障排查/诊断

Rust 在 Android 的编程实践——技术驱动的车云一体化解决方案探索

Greptime 格睿科技

android rust 时序数据库 车云

ChatGPT Search 上线 允许用户像使用搜索引擎一样完成即时搜索

吴脑的键客

ChatGPT Azure OpenAI

TiDB数据库出现性能问题,如何利用数据库性能诊断工具DBdoctor一分钟诊断!

TiDB 社区干货传送门

性能调优 实践案例 管理与运维 安装 & 部署 应用适配

知乎 PB 级数据:超大规模TiDB集群管控实践

TiDB 社区干货传送门

实践案例 集群管理 数据库架构设计 HTAP 场景实践

TiDB 集群组件间开启 TLS(双向认证

TiDB 社区干货传送门

7.x 实践

TiKV Raft Store 内存管理的原理与实现丨TiKV 源码解读(二十三)

TiDB 社区干货传送门

上海HR+AI智慧人才港启动,中国人力资本发展大会点亮数字化转型之路

财见

e&宣布2024年Q3收益,合并收入增长10%,达到144亿迪拉姆

财见

Java如何实现企业微信审批流程

威哥爱编程

Java 微信 企业微信开发

企业数字化转型:你的企业处于哪个发展阶段?

积木链小链

数字化转型 数字化 数字化平台

华测检测拟投资常州红海公司,布局电动自行车检测热门增长赛道

财见

1024程序员节 | 华为与开发者共筑智能应用新生态

极客天地

Elasticsearch开源仓库404 7万多star一夜清零

吴脑的键客

数据库 搜索引擎

TiDB Vector 本地部署体验

TiDB 社区干货传送门

8.x 实践 TiDB Cloud TiDB Vector

探讨Java深搜算法的学习笔记

威哥爱编程

Java 算法 DFS

软件测试学习笔记丨Flask框架-集成Swagger文档

测试人

软件测试

鸿蒙网络编程系列42-仓颉版域名解析示例

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

HarmonyOS 5.0应用开发——用户文件操作

高心星

鸿蒙 HarmonyOS 鸿蒙5.0 HarmonyOS NEXT

ORN Ventures获得5,000万美元A轮融资

财见

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