BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 Roman Strobl 关注 0 他的粉丝 ,译者 郭晓刚 关注 0 他的粉丝 发布于 2007年12月26日. 估计阅读时间: 8 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

本文是NetBeans & Ruby系列的第二篇。上一篇介绍了NetBeans中新的Ruby支持。

在这一部分,我将主要讨论Ruby on Rails工具,以及围绕着编辑器内内外外的各种能帮助你提高生产力的附加功能。IDE这个词本身就是集成开发环境的缩写,因此你将会看到使用NetBeans之后,就不用再为了使用Ruby和Rails而切换到命令行了。

Ruby on Rails支持

在NetBeans里面创建新的Ruby应用程序的时候,你可以从不同的模板当中选择——你可以创建普通的Ruby应用,也可以创建Ruby on Rails应用。

创建Rails项目的时候,IDE会让你选择要用原生Ruby还是JRuby,选择要用哪个数据库驱动(如果是JRuby还包括JDBC),还乐意很方便地升级到最新版的Rails。确认新建项目对话框之后,项目的默认目录结构就会建好。这是Rails的一大优点,由于所有的应用结构都差不多,所以你拿到别人建立的项目也会很快上手。NetBeans的项目浏览器能让你对项目文件之间的整体逻辑有个直观的感受,你也可以方便地浏览它们。

你可以直接在IDE里面使用Rails生成器——在项目上点右键就可以选择使用哪个生成器,填好参数,运行,接着你就会在输出窗口看到生成器的输出了。

你在开发的时候还可以用上编辑器的代码完成、重构、快速修补等等功能(本系列的第一部分介绍了编辑器的部分特性)。要是准备好运行你的程序了,什么配置都不用做,直接按下运行按钮就可以了——NetBeans捆绑了Webrick服务器来运行你的应用。浏览器窗口会自动打开。如果你打算调试程序,IDE还会在调试模式运行Webrick服务器。当然,你也可以很容易地把服务器换成Mongrel。

IDE还集成了Rake,因此你可以在项目中执行Rake目标:

调试Rake目标也很容易,运行迁移脚本,与Rails控制台交互,这些都可以在IDE里完成。你还可以通过一个特殊的对话框安装各种Rails插件。还有很多其他Rails开发方面的特性,希望我举的这些例子能让你对在NetBeans中开发Rails应用有个初步的印象。

编辑特性

我在上一部分已经介绍过一些编辑方面的特性(代码完成和重构)。我认为NetBeans的编辑器应该是大多数Ruby开发者都会喜欢的——随时都会发现一些贴心的小功能。例如当你创建一个新方法的时候,编辑器会自动插入结束语句,并把光标定位到方法中间那一行。你还可以看到各种元素,比如变量在文件中出现的所有位置:

如果我想给一个变量改名,只需要按一下Ctrl-R,文件中所有用到该变量的地方都会一下子改好:

漂亮的语法着色方便了在代码中定位,甚至RubyDocs也有语法着色。你一边输入,编辑器就会一边把错误用下划线标出来,NetBeans还会告诉你哪些变量是没用到的,好让你删掉它们。

如果你按着CTRL键,同时把鼠标移到任何类、方法或者变量上面,编辑器会把你带到它们的声明。你还可以看到一个小提示,告诉你当前选中元素的用途。

你也可以使用代码模板。你可以在很多预定义的模板里面选择,自己创建新模板也很容易。在模板里面可以设置模板展开后光标的位置,还可以预先插入各种变量。因此要是你经常使用某些API,模板就很有帮助。

还有很多编辑特性不能一一介绍,请查阅关于Ruby编辑的Wiki页面:http://wiki.netbeans.org/wiki/view/RubyEditing

Gem管理器

Gem管理器(Tools | Ruby Gems)可以安装新版本的地Gem,浏览、升级已经安装的Gem等等,请看下面的截图。用户界面和NetBeans插件管理器以及Rails插件管理器都很相似,因此你并不会感到陌生。在Ruby仓库里有很多很多Gem,想找什么库的时候全文搜索一下会很有帮助。

Ruby选项

我前面提过,你可以在原生Ruby或者JRuby之间切换。IDE默认使用JRuby,因为它捆绑了JRuby,不过只要告诉IDE现有Ruby的安装位置,它就会改用你指定的Ruby,不管是什么操作系统。

选项对话框里面还可以选择是使用经典调试器,还是使用快速调试器。不过在JRuby环境下你只能用经典调试器,虽然慢一点,但能适应各种情况。在原生Ruby环境下可以使用快速调试器(很容易安装,IDE会去下载它),这是Ruby推荐使用的调试器。选项对话框还有两个选项页:“格式化”控制编辑器里的格式化设置,“提示”控制编辑器里那些“小灯泡”的出现。

单元测试

单元测式功能集成得很出色。例如当你创建一个新模型的时候,一个新的单元测时也会自动创建好。这是Ruby on Rails的一个特色,它的哲学是单元测试太重要了,绝对不可缺少。单元测试也可以直接在编辑器里运行,编辑器里当然还可以浏览测试类。

如果你真的很在意测试,可以安装“ZenTest”Ruby Gem(通过Tools | Ruby Gems),之后项目的右键菜单就会多一个“AutoTest”选项。它会启动项目的自动测试,每当你修改了一个文件,它都会自动执行单元测试。AutoTest在很多情况下都能判断出需要运行哪些单元测试——尤其是Rails项目。如果它判断不了,就会运行所有单元测试。

使用控制台

尽管我们已经尽可能把功能集成进IDE,还是有你想用控制台的时候。比如当你想通过交互的方式尝试一些Ruby API的时候,控制台就很有用。选择Window | Other | Ruby Shell (IRB)就会打开Ruby Shell。控制台会在IDE的底部打开,你可以不受拘束地享受Ruby交互语言的强大能力。

更多信息

关于NetBeans的Ruby支持,你可以在它对应的Wiki页面上找到更多信息:http://wiki.netbeans.info/wiki/view/Ruby

Ruby文档页面上有不少演示和教程:http://www.netbeans.org/kb/60/ruby/index.html

最后,你可从以下地址免费下载NetBeans IDE:http://www.netbeans.org/community/releases/60/index.html。你还可以选择安装只包含Ruby的精简版IDE(特别提供了安装包),或者安装完整版的Java IDE附带Ruby支持。只包含Java的版本也可以通过Tools | Plugins增加Ruby支持。

在下一篇中,我们将讨论安装若干实验性插件之后得到的额外功能,还会讨论一些与社区相关的论题,比如如何参与到这个项目以及未来的计划。与此同时,请务必试一下NetBeans的Ruby支持。如果你经常用搞Ruby开发,NetBeans就是你要找的IDE!

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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT