0

私は非常に小さなデスクトップ アプリを構築しようとしています。これは、人々が非常に迅速にダウンロードできるものです。.NET と Java のどちらでビルドするかを決定しようとしています。Java がクロス プラットフォームになることは知っていますが、多くの Windows ユーザーが自分のコンピューターに JRE をインストールしていないかどうかを知りたいです。 .NET は、ほとんどの Windows マシンに自動的にプレインストールされます。自分のマシンに JRE がインストールされていない Windows ユーザーの割合を知っている人はいますか? また、.NET がプレインストールされている Windows ユーザーの年齢は何パーセントですか?

PS。私たちの決定は、多数の Windows ユーザーが JRE を使用している場合は Java を使用し、そうでない場合は .NET を使用することです。

4

9 に答える 9

7

あなたのチームがしっかりしたソフトウェアを作成するのに熟達している言語に基づいて、私の決定を下します.

ユーザーが Java ランタイムをインストールする必要があるかどうかにかかわらず、どちらか一方を使用することは、もはやほとんど問題ではないようです。

より優れたソフトウェアを提供できるものは何ですか?

于 2009-05-22T13:23:03.177 に答える
2

まず、クロスプラットフォームのサポートはあなたにとってどれほど重要ですか? これが非常に重要な場合は、.NET は実際にはあなたの状況では初心者ではないため、Java を使用することをお勧めします。ただし、.NET を検討している場合は、クロスプラットフォームは重要ではないと思います。その場合、.NET は、アプリケーションの外観と動作を典型的な Windows アプリケーションのようにするためのより簡単なパスを提供します。

フレームワークをダウンロードするという問題が障壁である限り。多くのユーザーは JRE を持っていません。また、多くのユーザーは最新バージョンの .NET フレームワークも持っていません。それは、これらの障壁があなたにとってどれほど深刻か、クロスプラットフォームのサポートがどれほど重要か、そしてあなたのターゲットオーディエンスが誰であるかに大きく依存します.

編集:これについて言及する必要がありましたが、Xenocode のPostBuild.NETのような「静的リンク」ツールを使用する可能性があります。

于 2009-05-22T13:21:34.583 に答える
1

現時点では、.NET はバージョン 2.x までしか実際にクロスプラットフォームではないことを覚えておいてください。これは、Mono Project でサポートされている .NET のバージョンです。

それを超えるものは依然として多くの PC (すべての主流 OS の最大 80 ~ 90%) を対象としますが、真のクロスプラットフォームにはなりません。Microsoft がすべてのプラットフォームに .NET フレームワークを同時にリリースするというポリシーを変更しない限り、最新の機能を採用し、さまざまな OS での移植性を維持することを期待しないでください。

JVM は、この面で見栄えがよくなります。また、必要に応じて、すべての新しいファンシー言語 (Scala など) をいつでも並行して実装できます。

于 2009-05-22T20:54:08.373 に答える
1

私はあなたの質問に少し混乱しています。不明なのは、クロスプラットフォームがあなたにとって重要かどうかです。その場合は、Mono も使用する場合を除き、Java が勝者です。私の答えの残りの部分は、クロスプラットフォームは重要ではないことを前提としています。

これは、顧客ベースが使用していると思われる OS に大きく依存します。知る限り、JRE はどの Windows OS にもプリインストールされていないため、JRE のインストールはすべて、ユーザーが手動で行うか、別のプログラム自体をインストールすることによって行われました。.Net フレームワークは、いくつかのバージョンの Windows にプリインストールされています。

  • .Net フレームワーク 1.1 W2K3
  • .Net Fraemwork 2.0 Vista 以降

ただし、生の数値については、それらが何であるか、またはこの種の情報に利用できる優れた統計があるかどうかはわかりません. 私の意見では、Windows OS を考えると、JRE ではなく .Net をインストールする可能性がはるかに高くなります。プリインストールされている一連の OS バージョンがあるためです。

于 2009-05-22T13:20:27.923 に答える
1

法的な経緯から、Java スタックは Windows にネイティブに組み込まれていませんが、.Net Framework は OS の更新の一部としてプッシュされています。

これは、デスクトップ アプリの分野で、あるプラットフォームが他のプラットフォームより優れている理由の 1 つです。(その他の 1 つは、MS スタックを使用して、家の Windows 側で「いい」UI を簡単に作成できることです)。

Windows での Java のインストールの浸透 (および JRE が適切なものであるかどうかという同時発生の問題) は、ターゲット オーディエンスの知識、または Java 依存関係を決定したゲームをプレイしたいという欲求を模倣する傾向があります。

結論:ターゲット ユーザーを最もよく判断できるのはあなたです。そして彼らの人口統計は、特定のいずれかのランタイムがインストールされている可能性を示唆しています。

于 2009-05-22T13:21:53.210 に答える
1

考慮すべき要素も 1 つあります... 人々は多かれ少なかれ JRE のインストールに慣れており、ほとんどの人が特定のアプレットを使用するために JRE をインストールする必要がありました。プロセスはかなり簡単で簡単ですが、. NET ランタイム (少なくとも ol'Windows では、XP や Vista でやったことがあるかどうかは覚えていません) と、下位互換性がまったくない... それは厄介なことです!

(大学の課題で.NETやJavaをやらなければならなかった時代から)

于 2009-05-22T13:24:40.800 に答える
0

.NETを検討している場合は、Silverlightをご覧ください。これはぴったりのようで、複数のオペレーティングシステムをサポートする小さなダウンロードです(特にmono / linuxの「 moonlight 」を使用)。

于 2009-05-22T20:43:21.797 に答える
0

.Net Frameworkのインストールで問題が発生したことはありません。実際、ほとんどの展開は自動的に削除され、インストールされていない場合はユーザーが取得します。

一方、Javaにはアプレットとスタンドアロンバージョンの両方があります。Javaのdlとセットアップにはブラウザの互換性の問題もあります。

本当のポイントは、あなたが最も開発できるものだと思います...結局のところ、30〜40 mb dlは実際にはそれほど多くはありません...しかし、もちろん、それはあなたがどのようなアプリケーションであるかによって異なります現像。

モノについては、私の実験では良いことがわかりましたが、多くのユーザーがいるアプリケーションでは完全に切り取られていません-.Netフレームワークにはこれをはるかに簡単にするキャンディがたくさんあります-それは争われると思いますがモノの経験が豊富な人によるものです。

于 2009-05-22T14:02:51.100 に答える
0

Flex 関係者から、通常 90% 以上のコンピューターに Java がインストールされていると言われました (彼らは 95% 以上が Flash を持っていると自慢していました)。Windows の .NET の数値がどのようなものかはわかりませんが、すべての人に当てはまるわけではありません。現在、すべてのユーザーの少なくとも 10% が Windows を使用していないように思われるため (その数は増え続けています)、常にすべての人を満足させることはできないようです。

私は疑問に思っています: なぜウェブアプリではないのですか? ローカル ファイルを操作している場合は、署名済みのアプレット/Webstart アプリケーションを使用しないのはなぜですか?

可能な限り最高のアプリケーションを開発することについての Curtisk のポイントは適切です。ユーザー ベースのスイート スポットに到達するよりも、テクノロジのスイート スポットに到達する方が簡単です。人々が実際に好きなプラットフォームで何かを構築できれば、正しい決定を下したことがわかります。

于 2009-05-23T21:59:13.643 に答える