JRubyでも議論、Java 1.4.2からJava 5への移行問題

既報のとおり、2007年6月10日(米国時間)、待望のJRuby 1.0がリリースされた。近々同リリースに対する修正要求やパフォーマンス改善を実施したマイナーリリース版JRuby 1.0.1が公開される見通しになっているわけだが、現在同プロダクトの開発MLにおいて将来リリースするバージョンが対応するJavaを、J2SE 1.4.2からJ2SE 5.0へと変更するべきかどうかが議題に挙がっている。

JRuby 1.0はJ2SE 1.4.2をベースに開発されている。このため、J2SE 5.0以降で導入されたアノテーション、ジェネリック、複数引数、列挙といった機能は使われていない。実装上の問題としては、J2SE 1.4.2には並列処理に対応したクラスが納められているjava.util.concurrentが用意されていない点が懸念されるところだ。J2SE 5.0以降であれば同パッケージのクラスを使ってJRubyを実装できる。

JRubyの開発をJ2SE 1.4.2からJ2SE 5.0以降のバージョンへと移行させる点については技術的な観点から賛成の声もあがっているが、次の2つの点から詳しく検討した方が良いという意見もある。1つは依然として完全にFLOSSで構築されたJ2SE 5.0実装が登場していないことから、そうした実装が登場するまでJ2SE 5.0への移行は控え方がよいのではないかというもの、もう1つは互換性の観点から依然としてJ2SE 1.4.2を使っている企業のために1.4.2互換を保ち続けることにも価値があるというものだ。

こうした移行の問題は、JRubyに限らず、Javaを開発言語に採用しているプロジェクトには常に付きまとっている問題だ。技術的観点からは、より新しいバージョンへ移行した方が利益があるが、互換性や現状普及しているバージョンという観点から、必ずしも移行することが優れた結果になるとも限らない。

そうした要因に加えて最近では、「JSR 315: Java Servlet 3.0」の規定でも、「JSR 316: Java Platform, Enterprise Edition 6」の規定でもそうだが、完全FLOSSのJava SEが登場していないことや、今後の互換性認証に不満があるということが、Javaに関係するプロジェクトにおいて技術的観点以外の要因として強く考慮されはじめている。

関連キーワード


転職ノウハウ

あなたが本領発揮できる仕事を診断
あなたの仕事適性診断

シゴト性格・弱点が20の質問でサクッと分かる!

「仕事辞めたい……」その理由は?
「仕事辞めたい……」その理由は?

71%の人が仕事を辞めたいと思った経験あり。その理由と対処法は?

3年後の年収どうなる? 年収予報
3年後の年収どうなる? 年収予報

今の年収は適正? 3年後は? あなたの年収をデータに基づき予報します。

激務な職場を辞めたいが、美女が邪魔して辞められない
激務な職場を辞めたいが、美女が邪魔して辞められない

美人上司と可愛い過ぎる後輩に挟まれるエンジニアの悩み

人気記事

一覧

イチオシ記事

新着記事

求人情報