我开始更仔细地研究RubyMine作为Rails开发的IDE,作为IDEA和ReSharper的忠实粉丝,我自然喜欢RubyMine。它具有代码自动完成、内置的RSpec支持、SVN集成等功能。然而,由于IDE处理了如此多的“Rails经验”,我想知道是否应该坚持使用TextMate+Terminal方法。
像RubyMine这样的Ruby/Rails IDE会妨碍我的发展吗?
试试Netbeans Ruby Edition。它不如RubyMine那么好用,但它具有内置的svn支持和类似TextMate的模板。我喜欢它,但话说回来,我还没有发布我正在开发的项目,所以对于生产力方面我不能多说。
记住,开源世界是关于选择的,所以有很多IDE可供选择。一个流行的IDE是Eclipse,它应该包括rails开发作为插件(安装非常简单)。Netbeans也支持rails IIRC。
也许现在是时候使用基本组件工具并找到一个IDE了。我总是发现,在开始学习一门新语言时,先了解原始工具链和如何工作会有所帮助,然后再自动化。
个人而言,除非是Java开发(本身就很复杂),否则我会避免传统的IDE,而使用Vim/Gedit/Makefiles和其他自动化的模块化解决方案。
GEdit在Linux/Gnome上是一个很好的折中方案。你有一个基本的文本编辑器,带有语法高亮和嵌入式终端。然后,如果你需要,可以添加自动完成和类浏览插件。
祝你好运!
我持有与其他人不同的态度。我认为,如果你不使用集成开发环境,对于大多数问题,你将花费大量时间在学习基础知识上,而这些知识通常隐藏在黑暗的角落里。集成开发环境可以让你的生活更轻松,在大多数情况下,它们实际上会教你关于所使用软件平台的知识。代码建议、自动格式化、集成帮助等功能可以帮助你更快地发现语言的特性,而比如记事本这样的工具则无法做到这一点。
当然,了解工具链也很重要,但我更喜欢在使用集成开发环境的同时进行学习。看看集成开发环境选择以某种方式执行某项操作的原因和方法。在许多情况下,集成开发环境会使用最佳实践或最流行的实践,从中你可以学到很多东西。
当我在Ubuntu上学习时,我使用gedit。我尝试使用不同的插件使其像TextMate。
我喜欢在学习过程中使用终端,因为它可以帮助你理解构建过程的所有方面。使用像RubyMine或Eclipse这样的重型IDE可能会隐藏所有这些,从而限制您对“底层”正在发生的事情的理解。通常,这种缺乏知识会在您开始开发更复杂的应用程序时带来问题。
在我看来,在IDE中支持SVN有点多余。只需打开终端以管理您的存储库,或者使用一些GUI工具如Tortoise即可轻松完成。
我认为使用RubyMine这样的IDE的唯一真正好处是自动/代码完成功能。我也是ReSharper的忠实粉丝(用于C#开发),当我学习Rails时,我也很想拥有类似的工具-但是TextMate是否支持自动/代码完成?
我会说,如果可能的话,请至少在几个月甚至一年后再考虑使用RubyMine。您必须做额外的工作,但长期来看会得到回报。坚持使用TextMate。
我也曾使用过RubyMine,它是一款出色的IDE(自然而然,作为JetBrains工具),但作为一个相对新手的Rails开发者,我发现它为我做了太多的事情。它往往会掩盖幕后真正发生的事情。然而,对于那些已经习惯了在调试器中逐步执行代码并检查变量的人来说,RubyMine非常有帮助,实际上增加了我对代码的理解(当然Netbeans和其他工具也可以做到这一点;我只是真的喜欢RubyMine的处理方式)。
因此,总的来说,我和大多数人说的一样:IDE使用的某些方面可以使事情更清晰;只要确保IDE不成为你的依赖。