たとえば、クローズド ソースの商用ソフトウェアを作成していたとします。このソフトウェアは、.Net 上に構築された Windows デスクトップ アプリ、ActiveX コントロール、Windows Netscape プラグイン、Cocoa 上に構築された Mac デスクトップ アプリ、Mac Netscape プラグイン、Java などの状況で展開されます。ブラウザでホストされるアプレット。モデルとコントローラ クラスを共有 Ruby ソース ファイルに記述し、MacRuby、IronRuby、および JRuby を使用してさまざまなランタイムに統合することは、コード共有の観点から実行可能でしょうか? 私のビュー クラスは、Windows では WPF、Mac では Cocoa、Java では適切なもの (SWT?) を使用するように記述されると思われます。
私の見解では、ここで最も重要なことはコードベースの長期的なメンテナンスであり、Ruby は、私がターゲットにしなければならない 3 つのプラットフォーム (.Net、Cocoa、および Java) でファーストクラスの言語に近いと思われます。あらゆる言語のように。私はこれで間違っていますか?
2 番目に重要なことは、コードに対するバイラル ライセンス要件を回避することです。JRuby がさまざまなライセンスでリリースされている場所を確認しました。バイナリを配布でき、ライセンスは自分のアプリケーション用に書いた Ruby ファイルには適用されないと仮定するのは正しいですか (フレームワークの変更とは対照的に)。
Ruby はよく知られているデスクトップ アプリケーションで使用されていますか? これは以前に行われたことがありますか?