- ベストアンサー
開発言語の選択
新しくWindowsアプリケーションや、Webアプリケーションを構築するのにVisualStudio.Netを利用しようと思っています。しかしこの統合開発環境にはVB.NET、C++.NET、C#、J#等さまざまな言語が利用可能となっており、どの言語を使うべきなのか悩んでおります。 普通はどのように開発言語を選択するものなのでしょうか? もしもそれぞれの言語ごとに明確な違い、得意分野や、パフォーマンス(実行速度)の差があるのでしたら、開発言語選択の指標となりますので是非教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
Visual Studio .netでは、基本的に「C++」と「それ以外」に分かれると考えると良いでしょう。 C++以外すべて――.NETアプリケーション専用 C++――.NETおよびネイティブアプリケーション VC++ .net以外は、.NETを使ったものしか基本的に作れません。.NETアプリケーションは#1の方がおっしゃっているように中間コードにコンパイルされ、実行時にネイティブコードに変換されますので、どの言語でも作られるものは同じです。 VC++ .netの場合、従来のネイティブアプリケーションが作成可能です。多くのWindowsアプリケーションではMFCと呼ばれるライブラリを使ってアプリケーションが開発されていますが、C++はこのMFCアプリケーションを作るためのものといってよいでしょう。 一応、C++でも.NETのための拡張が行われており、.NETアプリケーションも作成可能です。が、これは他の言語に比べ恐ろしく面倒です。また.NETのヘルプ類はほぼすべてVB/C#のみとなっていますので、C++で利用するのはかなり不便です。 また、現行のバージョンでは、VC++ .netではASP.NETによるWebアプリケーションが作れなかったように記憶しています。それらを考えると、わざわざVC++ .netで.NETアプリを作る人はほとんどいないでしょう。 ですから、.NETを中心に考えるのであれば、C++以外(ヘルプ等のことを考えるとVBかC#のいずれか)、今まで通りのネイティブなWindows用アプリケーションを作りたいならばC++と切り分けて考えるのが良いと思います。
その他の回答 (1)
- Bonjin
- ベストアンサー率43% (418/971)
.NETの場合、作ったプログラムは中間言語(MSIL?)にコンパイルされるの、VB.NETで作ろうがC#で作ろうが基本的に同じものができあがります。なので、基本的にパフォーマンスに差は出来ません。(従来のC/C++を使った場合は別) .NET言語のみの中での言語選択の基準は、経験などになるのではないでしょうか? Javaの経験があればC#が習得しやすいですし、C/C++の経験があればC++.NETが取っつきやすいと思います。
お礼
なるほど! やはりコンパイル後は全て同じものが出来上がるのですか!そうなるとあとは言語の経験だけですね! 私的にはVBが一番とっつきやすそうですね。.Net関連の参考図書も一番多いように見受けられますし・・・。 ありがとうございました!
お礼
VC++.NETだけは別物というか今までの路線を引き継いでるといった感じなんですね。 これからは.NETを利用するのはWebアプリケーション、Windowsアプリケーションの場合はVC++と使い分けていこうと思います。 大変参考になりました!ありがとうございます。