53090


Eclipse による Java 開発から、Ruby に移ってきました。  
呼び出し階層(Call Hierarchy)を表示する機能を持ったIDEはありますか？

【追記】  
Ecliipse のように多階層が一括目視できるのが理想ですが、  
呼び出し元、呼び出し先へのジャンプというものでも、情報をいただけますと幸いです。

ローカル、クラウド(SaaSなど)は問いません。

Gem を使っていると、Rails 本体の機能なのかプラグインの機能なのか、  
要求を満たせそうなメソッドや機能はあるか、という調査に非常に時間がかかり、  
困っている状況です。


CC BY-SA 4.0
2019-02-28T04:00:03.920
53085
2019-02-28T06:30:44.143
2019-02-28T05:14:28.917
32345
32345
question
ruby-on-rails ruby
Ruby (およびRails) のIDEで、呼び出し階層の表示機能があるものは存在しますか？


要望にぴったりのものは無さそうですが、IDEとしては以下2つでしょうか。

  * RubyMine  
ただし呼び出し階層(Call Hierarchy)ではなくクラス階層(Class Hierarchy)を表示するものです。  
[Building Class Hierarchy](https://www.jetbrains.com/help/ruby/building-class-
hierarchy.html)

  * Eclipse + Aptana Studio + RadRails  
使い方や画面は見つからなかったのですが、以下の記事があったので、おそらく出来るのでしょう。  
Aptana Studioはずっと更新が止まっているようなので、今も使えるのかは不明ですが。  
[RadRailsのバージョンが1.0へ - Profiler,CallGraph Analyzer,Rails
Shellが追加](https://www.infoq.com/jp/news/2008/03/radrails-1-0-profiler-
railsshell?itm_source=presentations_about_RadRails&itm_medium=link&itm_campaign=RadRails)  
[Aptana RadRailsで始める JRuby on Rails超入門
(2/3)](https://www.atmarkit.co.jp/ait/articles/0805/19/news116_2.html)

IDEではなく、ユーティリティ的なツールとしては、こういうのが見つかりました。

  * [CodeQuery](https://ruben2020.github.io/codequery/) \+ [eapache/starscope](https://github.com/eapache/starscope)

> コード理解、コード閲覧、またはコード検索ツール。 これは、C、C
> ++、Java、Python、Ruby、およびGoのソースコードを索引付けしてから検索または検索するためのツールです。
> それはcscopeとctagsのデータベース上に構築され、そして素晴らしいGUIツールを提供します。  
>  ～途中省略～  
>  さらに、cscopeの代わりに、starscopeを使ってRuby、Go、およびJavascriptのサポートを追加します。

それからRubyのスクリプトで解析し・データを作って、他のツールで可視化する手法もあるようです。  
こちらはそのスクリプト。

  * [callg.rb / コールグラフ作成スクリプト](http://www.namikilab.tuat.ac.jp/~sasada/prog/callg.html)
  * [eaceaser/ruby-call-graph](https://github.com/eaceaser/ruby-call-graph)
  * [mvidner/code-explorer](https://github.com/mvidner/code-explorer)
  * [ruby-prof/ruby-prof](https://github.com/ruby-prof/ruby-prof)

こちらがビューワーです。

  * [KCachegrind](https://kcachegrind.github.io/html/Home.html)


CC BY-SA 4.0
2019-02-28T06:30:44.143
53090
2019-02-28T06:30:44.143
26370
53085
answer