Javaからの切り替えを促進するには、C#4.0以降でどの機能が必要ですか? [閉まっている]

StackOverflow https://stackoverflow.com/questions/1606329

質問

Javaは人気のある言語です&巨大なエコシステムを持つプラットフォーム。 C#プログラミングに完全に切り替えるために、C#4.0以降およびそのプラットフォームに必要な機能はありますか?

役に立ちましたか?

解決

Javaと同じ数のプラットフォームで実行しますか?

それ以外の場合、それは私たちにとって完全に無関係です。


編集:Monoによる.NET" cross platform"の作成については、 https://softwareengineering.stackexchange.com/questions/20275/mono-is-frequently-used-to-say-yes-net- is-cross-platform-how-valid-is-that


Edit 2015:Microsoftは.NETのバックエンド部分をオープンソースにすることを決定しました。これにより、コミュニティはこれをJavaが実行されるよりも多くのプラットフォームに移植できるようになります。これは、Javaの進化に対するOracleのアプローチに対する究極の動きだと思います。

他のヒント

市場での C#の一般的な普及は、言語機能とは何の関係もありませんが、今ではJavaよりも優れていると理解しています。 C#を採用するには、メインの完全な組織戦略的シフトが必要です。

  • すでに膨大な数のJavaアプリケーションと多数のJava開発者がいます。 C#を切り替える理由新しいスタッフが必要になり、突然、すべてのアプリケーションが定義上レガシーになります。 これは大したことです!この変更を行うと、わずかなメリットしか得られない可能性があるため、会社に大きなリスクが生じます。なぜ気にするのですか?

  • 少なくとも、Javaエコシステムをサポートするオペレーティングシステムとミドルウェアの多くの大規模プロバイダーのオプションに慣れています。これは一晩で消え、独占価格モデルにさらされます(つまり、すべての意図と目的に対してMicrosoftにほぼ縛られています)。 独占価格設定の対象となるのは悪いことです!ほとんどの組織は、独占価格設定を避けるために、技術的に若干の不利な面があります。

IDE、フレームワークなどのエコシステムを除き、C#自体はJavaほど進んでいないとは実際には考えていません。機能に関しては、少なくとも現時点ではかなり進んでいます。

.NETは素晴らしいと思いますが、それを使用しないでください。うん、モノがあります...

本当にがJavaをプッシュする別のことは、 Eclipse (*)です。これまでで最も成功した完全な無料開発環境。そして、膨大な量の(ほとんど無料の)プラグインが利用可能であるため、コスト/メリットは無敵です。

VisualStudio C#とReshaperのペアは近づきますが、まだ完全ではありません...

(*):Javaが広く使用されている主な理由はEclipseであると言う人もいます。

私の答えは、なぜ多くの人がJavaを使用していると思うが、学校でc#を使用したいのかについての少しです:

私の大学では、Javaは私たちが最初に学ぶ言語であり、後にも最も学習する言語です。これは一般的なことだと思います。しかし、Python、c、c ++を学び、すでに多くのJavaを知っている場合でも、ほとんどの学生はC#を使用しています。これは、誰もがC#が仕事を与えると言われているからです:)学校はこれを知っており、私はC#を学校の新しい主要な選択肢にする1つの機能を知っています:すべてのプラットフォームで実行する =)

私たちは大学で、MS Windowsには技術的なものは何もないと教えられました。何人の人がそれに同意することができますか?

「何か」のないOSで作業して深刻なソフトウェアシステムを構築する場合、開発者が安定性、堅牢性、スケーラビリティ、可用性、トランザクション分離、同時性の質問にどのように答えますか?非標準的な行動の驚きや、MSに電話するだけで解決できる潜在的な問題の原因を予期できる場所ならどこでも、長い間ではないあなたのために修正が見つかることを神に祈ってください。

オープンソースは私たちの唯一の救いです。Javaは標準を尊重し、セキュリティモデルに多くのエネルギーを投資し、WORAを維持します。これはかなり単純な言語です。

C#に安全でないポインターがあると考えることができます。C#で作業している人が多い場合、C#で深刻なビジネスを行うのをあきらめるだけで十分です。 ..

真面目なソフトウェアを実行していて、ある種のマルチプラットフォームサポートが必要な場合は、NETが必要なもの、または必要なものになることはありません。

それをサポートするように設計されていませんでした。

MicrosoftがNovellを買収し、Monoの公式サポートを提供する際には、C#の使用を必ず検討します。

その後、次の .net リリースは、WindowsおよびLinuxで実行する必要があります(OSXは、今日のJavaのように、まだを残していますが、Javaではそのようにしたい-

それまで、Monoは最新の.NETバージョンの背後にあり、Windowsで実行されないLinux固有の機能(Mono.Linux" module"など)のコアを追加しています。

言語機能は優れていますが、もっと「動的」なものが必要な場合は、使用するには、RubyまたはPythonを使用します

しかし、それは私だけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top