この関連する私の質問への回答により、ほとんどのバックエンド サービスに Java を選択するようになりました (これはマルチコンポーネント システムです)。これが、クロスプラットフォームのデスクトップ GUI アプリにも適しているかどうかはわかりません。私が使ったことのある Java デスクトップ アプリケーションは、私が好きではない非ネイティブな外観を持っていますが、それが言語ではなく GUI ツールキットの選択に依存しているかどうかはわかりません。
私の GUI のほとんどは Web ベースであり、デスクトップ用の GUI は比較的少数の聴衆 (管理者、開発者、およびテスター) しか持たないため、それらを行うために私の時間予算のごく一部しか確保できません。それでも、私はネイティブの外観が必要であり、依存関係の束を避けています.
使用したい GUI ツールキットから始めて、それをサポートする言語を選択するのがおそらく最も適切です。私が知っているクロスプラットフォームのものは次のとおりです。
- GTK
- qt
- AIR (Linux に到着した場合)
たとえば、.Net/Mono で GTK# を使用する場合があります。どのような依存関係の問題に直面するでしょうか? 実際の GUI をアプリケーションの残りの部分から分離し、Linux では GTK を使用し、Windows フォームなどの Windows ではネイティブなものを使用して、Windows に GTK をインストールする必要がないようにすることをお勧めしますか?