Java ライブラリを Ruby で使いたい人のための経験則(JRuby vs CRuby + Rjb)

使い分けの参考になればと思い、Ruby と CRuby + Rjb について、Java ライブラリを Ruby で使いたい人のために、私の経験則をまとめてみました。

それぞれの問題点

CRuby + Rjb を使う場合の問題点
  • フィールドにアクセスできない(クラスフィールド・インスタンスフィールド)
  • AWT を使うライブラリを踏むと落ちる(Mac OS X の場合)
JRuby を使う場合の問題点
  • 配列を引数にとるメソッドの呼び出しが面倒(特定の Java の型の配列を作る必要がある)

速度に関する経験則

速度については、いろいろな作業で、CRuby + Rjb と JRuby とで等価な作業を行うようにしてきた中で経験した範囲では、どちらかというと JRuby のほうが速い傾向が見られます。
一方で、jruby / jirb は、起動時間がやはり長くなるので、ちょっとしたチェック作業をする場合には、ruby / irb が快速に立ち上がるのがうれしかったりもします。

Ruby 1.9

Ruby 1.9 で、CRuby + Rjb の速度の向上があるのかもしれません。クリスマス後に、この記事に対するトラックバック記事をあとで書くかもしれません。