做ruby on rails程序员重构?

Joa*_*urg 13 ruby refactoring ruby-on-rails

我是一名Java程序员,一年前开始编写Ruby on Rails编程.我喜欢语言,轨道本身及其背后的原则.但困扰我的是Ruby程序员似乎没有重构.

我注意到在Ruby/Rails中重构的工具很少.一些IDE,如Aptana和RubyMine似乎提供了一些非常基本的重构,但与Eclipse的Java重构相比,没什么大不了的.

然后有另一个事实:大多数railers(甚至是专业人士)更喜欢一些轻量级的编辑器,比如VIM或TextMate,而不是IDE.好吧,使用这些工具,您只需获得零重构(只有带有查找/替换的正则表达式).

这给我的印象是rails程序员不重构.当然,这可能只是一种错误的印象,但我想听听专业人士在轨道上使用红宝石的意见.

你重构了吗?如果你这样做,你怎么做,使用哪些工具?如果没有,为什么不呢?

Dig*_*oss 19

肯定是的,工具差异有不同的原因


IDE构建Java更实用

Java严格的输入和文档化的语法使得编写语言解析IDE工具成为可能

Ruby的鸭子打字和Yacc源语法记录使得这很难做到.

Java更需要IDE

Java的冗长使得代码编写和代码重写工具变得可取.

Ruby非常简洁的特性与典型的无类型声明(当然它们看起来是内联的Type.new)相结合,使这些东西成为可选的.

将两者结合起来......

因此,真正难以编写加上实际上不需要的组合会导致平衡倾向,有利于人们最喜欢的编辑.

为IDE提供vi(1)是我不想做的事情,但我使用Java,因为我需要IDE来编写我的接口实现等,而且它解析Java的事实使它在代码完成中很有用.因为使用Ruby它不能,我也不需要它,我坚持使用vi(1)和TextMate.

摘要

由于您没有埋没在代码中,因此可以通过一些合理的编辑来重构.但是在关于"其他Ruby开发人员"的主题时,我的Ruby问题是:为什么每个人(除了我似乎)都使用函数parens?因为在几个百分比的情况下他们是需要的,所以"不一致"是令人不安的?


pja*_*mer 8

是.

大多数Rails程序员首先尝试并遵循测试,编写代码以通过测试,然后在进行下一次测试之前重构代码.

做所有的rails/ruby​​程序员......可能不是,但就这个社区中的"氛围"或"感觉"而言,我会说这是一种被鼓吹和实践的东西,它发生的次数多于没有.

没有必要使用IDE.对于Ruby和大多数rails程序员来说,VIM,emacs和/或textmate就足够了.我想Java需要更多的编译或者其他东西,但我对此有何了解,因为我只用Ruby编程.为什么所有Java程序员都使用IDE(因为我正在推广).


kar*_*dog 6

RoR开发人员了很多重构.但最重要的是,他们这样做是因为他们可以轻松地做到这一点.

如果你遵循RoR的主要原则 - 不要重复自己 - 并花了一些时间在代码设计上(这意味着你没有碰巧创建大量的单片代码),没有什么能阻止你重写一段代码无论你在想什么(概括,加速,提高可读性等).Rails的内置测试/基准测试/性能分析功能可以帮助您检查是否实现了目标,同时又不牺牲已有的和正常运行的功能.

编辑器完全独立于代码,因此您甚至可以使用记事本进行编码(我不是命令行狂热者,我更喜欢像Gedit这样的'图形'编辑器).