« スマフォでもノベルゲームはそこそこ売れているらしい | メイン | Amazon 購入履歴ダウンローダの更新と課題 »

2015年02月14日

Misc.:: Javaからの変換いろいろ

    

Microsoft、クロスプラットフォームのモバイルアプリ開発でJavaを推進 を読んだのでまとめる(この記事はタイトル詐欺だと思われる)。
記事中の JUniversal は、現在のところ Java から C# へ変換するツールのよう。
パフォーマンス重視のアプリ ( Windows/AndroidNDK ) 用に C++ へも間もなく対応するようなことが書かれているので、その辺り興味深い。
Objective C++ も対応するようではあるが、現時点では Google の j2objc を使って対応できると言うことのようだ。

Java から C# へ変換するのは他にもいくつかある

この手のものとしては Sharpen が比較的完成度が高い様子
Android を C# 化する XobotOS を作る時に使われたなどが有名だろうか。

他に Java 2 CSharp Translator for Eclipse ( sourceforge ) などもある。


ソースコードの変換ではなく、ネイティブ化するものもある。
RoboVM は、VM と付いているか、VM ではなく、Java のバイトコード ( class ファイル ) を LLVM ビットコードに変換して、それとサポートライブラリ( GC やスレッド等 ) をリンクすることによって、ネイティブコード化して動かすもの。
iOS メイン。
Linux や MacOS へも対応している様子。
Windows でもネイティブ化して動くようになると更に色々と使えそう。
Ingress は libGDX で作られていると言う話なので、iOS 版はこの RoboVM が使われているのではないかと思われる。


IKVM は Java VM を .NET で実装したもの。
VM の上に VM を重ねているので重そうな印象を受けるが、最近だとそうでもない気がする。
IKVM で動かしたことはないけれど。

JavaScript に変換する GWT や、ネイティブ化するものは他にもあるけれど、とりあえずはこんなところだろうか。
Java は現時点だとマルチプラットファーム化するとしたら、C/C++ の次くらいの選択肢だろうか?
C# も同じくらいかもしれないけれど、Xamarin や Unity などプロプラエタリなものへの依存がまだあるように思えるので、その辺りネック。
CoreCLR is now Open Source で、MS が VM を MIT ライセンスで OSS 化したり、.NET Native などで徐々に解消されて行ってるが。


投稿者 Takenori : 2015年02月14日 22:58




comments powered by Disqus
Total : Today : Yesterday : なかのひと