3

最終的には PC、Xbox、Android プラットフォームで実行したいコードを書いています。可能であれば、Mac と Linux も実行します。プラットフォームごとに書き直すのではなく、すべてのプラットフォームで動作する言語で一度書きたいと思います。Fantomも検討しましたが、どうやらAndroidでは動かず、静的型付けやジェネリクスのサポートが限定的で、ScalaはCLRで動くと聞いていますが、現在CLRには対応していません。これにより、XNA で使用できなくなります。動的型付け言語は実行が遅く (特にスマートフォンでは重要)、デバッグが難しいため、動的型付け言語は使用したくありません。

4

2 に答える 2

2

JVM をターゲットにする必要があるのはなぜですか? この必要性が Android を処理することのみである場合は、おそらくXamarin (当時 Novell で開発されたときに Mono の背後にいた人々) によって開発されている、人気のあるモバイル プラットフォーム用の .NET スタックであるMonoTouchを見てください。Mono自体は、X Window Systemを使用してグラフィカルな対話(「Linux」と呼ばれるもの)を使用して、Macおよびその他のPOSIXプラットフォームをターゲットにする方法です。

いずれにしても、さまざまなプラットフォーム用に GUI パーツを書き直す必要があるかもしれないことに注意してください。まず、タッチスクリーン デバイスで使用されるインターフェイスへのアプローチは、「デスクトップ」デバイスの場合とはかなり異なります。次に、MonoTouch はおそらく提供しますが、対象となるプラットフォーム (Android、iOS、WinPhone) での統合 UI の場合、デスクトップ Windows、Mac、および X ベースのプラットフォームには、.NET または Mono (Windows では WPF または Winforms、Mac OS X ではMonoMac (使用) X を使用する POSIX プラットフォーム上のCocoa ) およびGtk # Windows 以外のプラットフォームでは最適ではないため、確認する必要があります。

ただし、少なくともコア プログラム ロジックを各プラットフォームに移植する必要はありません。

PSまた、私がさまざまな機会に見ることができた最新のJVMベースのソフトウェアスタックのほとんどは、IKVMを介してCLRをサポートしていたことに注意してください.

于 2012-03-21T08:37:27.083 に答える
0

はい、Scalaですが、通常はJVMで使用されます。また、いくつかのCLRサポートがあります。Clojureは静的に型付けされていませんが、JVMとCLRの両方をサポートしている(またはサポートしている)と思います。

于 2012-03-19T20:09:00.870 に答える