ここから本文です

VB6.0とVB.NETの違いってなんですか?

chi********さん

2009/11/1521:19:43

VB6.0とVB.NETの違いってなんですか?

バージョンが違うとかそういうことなのでしょうか?
初心者ですみませんが出来るファイルはVBScriptですか?

閲覧数:
28,428
回答数:
1

違反報告

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

abi********さん

編集あり2009/11/1606:59:56

[違い]


バージョンの違いではありますが、そのバージョンアップで根本的なテクノロジーも変わりました。
次世代技術としての新テクノロジーを取り入れたのが、VB.NETです。
すなわち、マイクロソフト(以下略: MS)の用語で言えば、.NET(ドットネット)というテクノロジーです。
MS以外も含めたIT界全般では、SOAPというプロトコルと、それを使った各種のテクノロジー(Webサービス等)の事です。


順番に説明します。

ところで、MS-DOS時代のMSは、インターネットは自社に不利益な存在として拒絶していました。
しかし、Windows95あたりで、本格的なWindows時代となり、インターネットエクスプローラーを装備するなど、インターネット仕様を受け入れました。
インターネット市場が、あまりにも大きくなって行ったためです。
MSの開発環境では、プログラムを部品化する技術としてCOMという技術仕様(ActiveXやATL等もCOM仕様)がありますが、それをインターネット上で動作するように仕様変更する予定でした。
しかし、COMとインターネットとの相性が悪く無理でした。
そこで、インターネットでのXMLという言語に目を付けて、プログラムの部品化技術をXML仕様で作り直すことになりました。
それが.NETです。

MSだけでは無く、複数の企業が参加して、標準化団体に提出された仕様です。

Webサービス
http://ja.wikipedia.org/wiki/Web%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B...

SOAP
http://ja.wikipedia.org/wiki/SOAP_(%E3%83%97%E3%83%AD%E3%83%88%E3%8...

WS-I
http://ja.wikipedia.org/wiki/WS-I



とは言え、.NETが登場して、かなりの年月が経過しましたが、まだまだ初段階で、進化中です。
(MSだけでは無く、他企業と標準化団体や、ハードメーカーも巻き込んでの技術仕様ですので、時間がかかります)

将来的には、3Dゲームや、一般プログラム(ワープロや表計算ソフト等)がWeb上で動作します。
また、YAHOO!やGoogle等の検索エンジンで「情報」を検索するのと同じように、「機能(すなわちプログラム)」を検索することが可能になります。
もしも、64ビット機が今よりも普及すれば、上記のような事が可能になりますので、そう遠くない将来なのかも知れません。




[現違い]


現時点の違いとしては、VB.NETは、言語仕様が整理されて分かりやすく、VB6.0よりも使いやすいです。
ただし、VB.NETは、オブジェクト指向が本格的になりましたので、オブジェクト指向を学ぶ分、難しいと感じる人もいるかもしれません。
しかし、オブジェクト指向とは、簡単にいうと、プログラムをグループ化して整理する技術です。
VB6.0でも、ボタンやリストボックス等のコントロールは、オブジェクト指向によるものですので、VB6.0プログラマーはオブジェクト指向を既に使い慣れています。
よって、VB.NETへの移行は、それ程問題ないはずです。
むしろ、使いやすいはずです。


あと、フレームワーク(コンパイラー側で提供する機能)が、C♯とVC++.NETとVB.NETとで共通になりました。
そのため、以前はVC++の役割りでしたDLL作成やサーバー作成の機能が、VB.NETでも可能になりました。
よって、VB.NETは、かなり機能アップしたVBという事になります。


また、VC♯.NETでも、VC++.NETでも、VB.NETでも、コンパイル後のプログラムの規格が共通化されていますので、各言語間の連携がやりやすいです。
VB6.0時でも、VC++6.0との連携が可能でしたが、仲介するインターフェーイス技術が必要でした。
.NETでは、そのような仲介は不要で、直接にリンク(結合)しています。
あと、MS以外の開発環境でも、また、Windows以外のOSでも、前述のSOAP関連仕様を受け入れた開発環境ならば、インターネット経由で相互間のリンクが可能です。


類似質問も参照。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1127023941



[スクリプトの.NET化]


質問者さんは、スクリプトでの開発をされているという事ですので、その.NET化について下記に記します。


まず、Web系のスクリプトは、ASPからASP.NETとなって、.NET登場当初から、.NET化が進んでいます。


また、シェル系のスクリプト(MS-DOSのバッチファイルに該当するスクリプト)は、WSHとなって、.NETとの相性は良いですが、.NET化とまでは言えません。
Windows PowerShellとなってからは、本格的な.NET化となりました。


オフィス製品のマクロ言語であるVBAの.NET化はまだです。
WordやExcel等が、次期バージョン2010でWeb化の検討が始まる様子ですので、もしかするとVBAの.NET化が始まる可能性はあります。
ただし、VBAとOSとの間にWord等のアプリが仲介しているのですから(VBAは、直にシステム接続されていないので)、.NET化はそれ程重要では無いです。
よって、従来のVBAも残る可能性はあると思いますが、どうなるかはわかりません。

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

2009/11/22 09:44:20

ありがとうございました。大変詳しく分かりやすい解説で参考になりました

あわせて知りたい

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

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

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

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

閉じる

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

不適切な投稿でないことを報告しました。

閉じる