繁体   English   中英

浏览大型ruby代码库,例如rails

[英]Navigating a large ruby codebase, like rails

在我职业生涯的大部分时间里,我一直是Java开发人员,并且开发并维护了一些相当大的代码库。

现在我已经在Rails中进行了一段时间的开发,但我已经将IDE抛在后面了,所以我想开始研究一下实际的Rails源。 我主要使用的是github界面,它实际上是相当不错的,但是我想知道是否有一些来自经验丰富的ruby开发者的技巧和技术?

我主要缺少的是我信任的日食功能,例如“查找用法”或“转到实现”。 也许是范式转变了……请赐教我:P

由于您是Eclipse用户,因此我建议使用Rubymine 它提供了许多相同的功能,并且与rails集成良好。 它对跳转到实现/使用有很好的支持,尽管在ruby中这是比Java更难的问题。 当Rubymine无法确定哪个实现是正确的实现时,通常会为您提供所有匹配方法的列表。

我个人使用Vi,并且在Rails项目的浏览中也没有遇到麻烦,通常在惯例和熟悉的情况下,在同一个项目上进行足够长的时间就可以了。 我默认使用grep或查找用法等。

问题是“ goto实现”之类的东西可能需要对运行时有深入的了解。 在初始化或混入过程之后,某些方法可能不存在。 鸭子键入意味着响应消息的任何内容都是潜在的候选类型。

我对IntelliJ(Rubymine)感到很满意,但是您不会从Java之类的语言中获得任何程度的导航支持,而Java在大多数情况下都是众所周知的。 它根本不像Java代码IMO那样易于导航。

可以知道的东西,例如显式定义的方法,“显而易见的”调用等, 都是可以导航的,并且IMO现在IntelliJ做到了最好,但是我已经有一段时间没有使用Eclipse Ruby环境了,因此现在的情况可能会有所不同-但我经常在如何做惊讶,考虑到情况。

就是说,我在IntelliJ,TextMate,Sublime Text 2和Emacs之间来回切换。 TextMate的单窗格设计对我几乎没有用。 对于快速的项目或小型项目,就足够了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM