ここから本文です

vb.net とは、主に何をする為の言語ですか? どんな分野に活躍していますか?

s6004122000さん

2010/3/2503:37:22

vb.net とは、主に何をする為の言語ですか?
どんな分野に活躍していますか?

閲覧数:
26,745
回答数:
1
お礼:
25枚

違反報告

ベストアンサーに選ばれた回答

abiko_tetuさん

編集あり2010/3/2506:22:48

[概要]

VB.NETは、Visual Basic .NET の略で、マイクロソフト社製のBASICという言語です。
今はBASICと言えば、マイクロソフト社製のBASIC(VB.NETやVB6.0等)を指す場合が多いですが、昔は、色々なBASICがありました。
NEC等の、各パソコンメーカー製のBASICがありました。
今でも、例えば、計測器の制御に使われるHP-BASIC等が存続はしています。
しかし、広範囲の分野で使われるBASICと言えば、マイクロソフト社製のVB(VB.NETやVB6.0等)のみと言っても言い過ぎでは無い状況です。


当初は、他の言語と比べて一番簡単な言語で、プログラミングの初心者が使う入門言語として人気がありました。
今も言語仕様が比較的簡単という意味では同じです(今は、他にも簡単な言語は、増えましたが)。
しかし、現在は、高機能化されているので、初心者から上級者まで利用する言語です。



[Windows時代に入ってからのVB]

MS-DOS時代までは、VBは、「初心者のみの言語」でした。
しかし、Windows時代に入ってからのVBは、高機能化されてプロでも使う言語になりました。
すなわち、初心者から上級者まで使われる幅広い言語です。
また、その後、.NETと言うテクノロジーが取り入れられてからは、さらに高機能化されています。



[活用分野の概要]

VBの得意な分野は、ユーザーインターフェースです。
すなわち、ユーザー(PCの操作者)が直接触れるプログラムを担当しています。
ボタンやテキストボックス等の各部位が、部品のようにまとまったプログラムになっているので、まるで、ブロックやプラモデルを組み立てる感覚でプログラミングが簡単です。

Windowsプログラミングでの役割り分担は、

C(又は、C++)が、ハード側の処理や、サーバーの作成、DLLの作成などを担当しています。
そして、VBが、前述の通り、ユーザーインターフェースです。
よって、C/C++でDLLを作成して、それをVBで作るプログラムで呼び出して実行するという組み合わせが行われています。

ただし、上記は、役割り分担の話しで、例えば、大きなシステムを作るのに、多数のプログラマーで開発する場合などの話しです。
VB単独でも、いろいろなプログラムを作れます。



<欠点>

VBは、マイクロソフト社製なので、Windowsのみに限定です。
しかし、サーバー機は、UNIXが多いですが、クライアント機は、Windowsが多いので、クライアントを担当しているVBとしては、あまり欠点とは言えませんが。

あと、C/C++に比べて、処理速度が遅いです。




[.NETからのVB]

Windows2000時代の終わり頃、本格的には、XP時代から、.NETというテクノロジーが取り入れられました。
VBでは、VB6.0より後のバージョンでは、VB.NETという仕様に生まれ変わりました。
この.NETとは、簡単に言いますと、プログラムの規格を、今よりも標準化して行こうという方針のものです。
コンパイル後のプログラムの規格や、各プログラムがネット経由でリンク(結合)する規格などが標準化されました。

その結果、各言語間の壁が無くなりだして、VBでも、サーバー作成や、DLL作成などの、以前はC/C++が担当している分野での機能が強化されました。

よって、VB.NETは、今でも初心者に優しい言語ではありますが、上級者用の部分も、かなり色濃くなっています。




<.NETでの欠点>

前述の欠点と同じです。
しかし、処理速度が遅い件は、.NET仕様を取り入れた他の言語(C++に.NET仕様を取り入れた言語のC♯など)も同じですので、あまり欠点とも言えない状況に成りだしています。




[活用分野の詳細]

活用分野は、大雑把には説明済みですが、具体的な説明を以下にします。

ボタンやテキストボックス等のユーザーインターフェイスが作れます。しかも、簡単に。
また、ファイル操作や、文字列操作、印刷処理、画像処理などの、プログラミング言語として基本的な処理は、一通り可能です。
通信機能(TCP/IPを使ったソケット通信等々)や、データーベース操作などの応用分野の機能も豊富です。
また、Excel操作といった、VBAに該当する処理も可能です(ExcelをDLLとして呼び出して、Excelの持つ機能を実行)。
サーバー作成用の機能、DLL作成、スレッド等の、以前はC/C++が担当していた分野の機能も豊富になっています。

あと、Web作成の開発環境であるASP.NETと、VB.NETとでは、一応、別物とされていますが、両者間の壁は、無くなりつつありますので、Web関係も可能と言えます。




なお、グラフィックスやゲームは、2DならばVB.NETで可能ですが、3Dとなると、C♯のXNAと言う機能を使わなければなりません(又は、C++でDirectXという機能)。
しかし、Webでの3Dならば、WPFという機能で、VBでも可能です。



次期Visual Studio 2010では、動的言語のPythonやRubyが使えるようになります。
以前から存在する言語では、VBが動的言語として対処して行くようです。
(プログラム構成は、一般にコンパイル時に決定されますが、実行時に決定するのが動的です)

質問した人からのコメント

2010/3/25 20:36:07

成功 ありがとうございました。
勉強になりました。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

5文字以上入力してください

Q&Aをキーワードで検索:

Yahoo!知恵袋カテゴリ

一覧を見る

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。