Microsoft_Visual_Basic とは
Notice: Undefined variable: adsense_tag in /usr/local/www/wikipedia.atpedia.jp/htdocs/wiki.php on line 288
Microsoft Visual Basic(マイクロソフト ヴィジュアル ベーシック、VB)はBASIC言語を基に作られたマイクロソフトのスタンドアロン開発用プログラミング言語であり、RADに対応した統合開発環境の名称。
概要
マイクロソフトのQuick BASICを拡張したもので、Microsoft Windows (Windows) 用のアプリケーション開発、および Web用のアプリケーション開発、モバイル向けのアプリケーション開発などを行うことができる。Visual Basicを略してVB(ブイビー)と呼ぶことも多い。当初からWindows向けに開発されたため、同社製品との親和性は非常に高い。バージョン1.0ではWindows版の後にMS-DOS版が発売されており、キャラクタベースにもかかわらずコントロールを配置してGUIを構築することができた。ただしキャラクタベースであるため、グラフィックスの描画はフォームを使用した場合、不可能である。「BASIC」の由来から、プログラミング初心者用といわれることが多く、また当初のバージョンでは機能も限定的であったが、バージョンを重ねるごとに拡張され現在ではさまざまなビジネスシーンで活用されている。
フォーム上にあらかじめ用意された各種のGUIパーツ(コントロール)を配置して、それらのプロパティが変更されたり、マウスでクリックされたりするなどイベントが発生した場合の処理を記述(コーディング)してゆくことで、プログラムを作成していくスタンスが特徴。グラフィックの描画などGUIを実現するときに付随する定型的な画面管理はパーツの内部で行なわれ、ユーザがコーディングする必要がないため複雑なGUIを利用したプログラムを簡単に作成することができる。
言語仕様は純粋なBASIC言語に比べかなり拡張されており、構造化プログラミングやオブジェクト指向に近い概念が取り入れられている。バージョン6.0以前ではオブジェクト指向的な要素は完全には実装されておらず、特に継承にあたる機能は皆無であったが、バージョン7.0(2002)以降では完全にオブジェクト指向言語としての機能を実装している。
初心者用と言われていた初期のバージョンと比較すると、バージョン6.0以降のVisual Basic本体は高度な機能を持っており、かなりの機能を持つソリューション開発も出来る。ただし、Java、C#など他の高級言語と同様に、実行速度面はC/C++で記述したネイティブプログラムに比べ10倍から20倍遅いと言われている。ただし、実際には処理の種類に応じて速度比較の結果は異なるので10倍から20倍という値には注意が必要である。また、敷居の低い開発言語であるため、非難や侮蔑の対象となることがある。しかし簡易性からハイレベルのプログラマにも根強いファンも多い。
バージョン7.0(2002)以降で作成したアプリケーションを実行するには、Visual C#やVisual J#と同じ実行基盤である.NET Frameworkが別途必要であるが、これは作成したアプリケーションのパッケージに同梱して配布することがマイクロソフトにより認められている。なお、バージョン6.0以前は.NET Frameworkではなく、独自のランタイムライブラリのインストールが必要であった。
DirectXではバージョン7.0(2002)からVisual Basic上での開発環境が与えられた。
バージョンの歴史
.NET Frameworkに対応したバージョン7以降はバージョン6以前と比較して大きな変更が施され、互換性もない。バージョン7.xに限り、Visual Basic .NETという。
Visual Basic 言語が採用されているその他の環境
VBA (Visual Basic for Applications)
個々のアプリケーション用のマクロ環境として実装されるVisual Basic。
言語仕様としては、本家のVisual Basicで.NET以降がリリースされたのちも、Visual Basic 6.0のものが実装されている。
ExcelやAccess、WordなどMicrosoft Officeの多くのアプリケーションで実装されているほか、独自に開発したアプリケーションにVBAを搭載することも可能で、サードパーティ製のアプリケーションにVBAが搭載される場合もある。
本家Visual Basicとの大きな違いは、搭載アプリケーション内でしか実行できない点にある。
VBAでは、各アプリケーションをオブジェクトとして操作できるようになっており、Excelを例にとると、ファイル全体をさすBookクラス、スプレッドシートのセルをあらわすRangeクラス等が、VBAから操作できる。
VBS (Visual Basic Script)
ASP (Active Server Pages)
VBX
Visual Basic の歴史
Visual Basic 4.0
爆発的に普及が始まったWindows95用のアプリケーション開発環境の一つとしてリリースされた。ボタンやコンボボックスのような標準コントロールに加え、サードパーティから発売されたコントロールをマウスを使ったGUI操作で配置することでアプリケーション画面を作成することができ、プログラム生産性が高いことが特徴であった。特に、サードパーティ製の高機能なコンポーネントが多く発売され、熟練開発者でなくとも操作性の高いアプリケーションが開発でき、当時のエンドユーザ・コンピューティングに大きな影響を与えた。技術面で見ると、Visual C++などを用いてCOMのコントロール(OLEコントロール、OCX、後にActiveXコントロールと呼ばれる)を開発し、これらの部品群の組み立てをVisual Basicで行うことが容易にできた。特にExcelなどのアプリケーションをOLEを通じて制御することができるため、帳票を扱うような業務アプリケーション開発の分野で使われることも多かった。
また、Visual Basicで作成されたアプリケーションを実行するために、ランタイムをあらかじめインストールすることが必要であった。
Visual Basic 6.0
ActiveXに完全に対応し、ActiveXオブジェクトを使用することはもちろん作成することも可能であった。
そのため、ActiveXコンポーネントとして公開されていたDAOやADO、oo4oなどを使用して、SQL ServerやOracleを制御することができ、多くのビジネスシーンで使用された。
また、バージョン1.0からの経験も蓄積されていたためVisual Basic 6.0を扱えるプログラマ・情報量ともに豊富だった。
ただし、言語仕様が完全なオブジェクト指向言語ではなかったことや、複雑化するシステム環境に十分に対応できなかったり、開発容易性を確保するために機能的な制限があったため以下の不都合が指摘されてきた。
- コンポーネントのバージョンの違いからトラブルが起きやすい。(DLL地獄)
- 基本的にマルチスレッド機能が無い(ActiveX EXEでのみ可能)
- 他の言語との情報共有が乏しい
- アプリケーションのインストールが面倒である
また、Webの普及とともにWebアプリケーションとしてシステムを構築する事案が増え、Java言語がWebアプリケーションに柔軟に対応していたのに比較すると、
Webアプリケーションの開発が面倒という指摘もあった。
これらの事から改良の手が加えられ、VB.NETが誕生した。
しかし言語仕様の大幅な改訂のために、VB6とVB.NETとの互換性はほとんど無くなっている。
(VB6.0がオブジェクト指向型言語ではないため、オブジェクト指向型プログラミングは不可能と思われがちだが、実際は不可能ではない)
Visual Basic.NET
Visual Basic.NET
[Microsoft Visual Basic .NET]2002年には、このVisual Basicを基に強いオブジェクト指向の概念を取り入れた新しい言語Visual Basic.NETが開発された。VB.NETはVB6の後継言語とされ、マイクロソフト社の.NET Frameworkという新しい技術基盤に対応している。
対応する.NETのバージョンは.NET Framework 1.0
VB.NETは新たにサーバ用のプログラム、Web用のプログラムが開発出来るなどのネットワーク開発機能が追加された。VB6の後継といっても、豊富なデバッグ機能が追加されたり、中間コード形式になるといった言語設計思想そのものが変わるなど、様々な点で大幅な機能の追加および削除が行われた。
Visual Basic.NET 2003
対応する.NETのバージョンは.NET Framework 1.1Visual Basic 2005
名称からは「.NET」という名前がなくなったが、上記のVB.NETと連続性がある言語である。言語仕様が強化され、ジェネリックの要素が導入されたほか、パーシャルクラスや演算子のオーバーライドなどがサポートされた。
また、開発環境も大きく強化されている。
対応する.NETのバージョンは.NET Framework 2.0
Visual Basic 2008
言語仕様が強化され、構造化照会構文であるLINQや、ラムダ式、匿名型などの要素が追加された。対応する.NETのバージョンは.NET Framework 3.5
関連項目
外部リンク
Microsoft_Visual_Basicのリンク元
- [[Yahoo]] マイクロソフト ビジュアルベーシック2008
- 参照_(情報工学)
- Visual_Basic
- [[Yahoo]] マイクロ ソフト ビジュアル ベーシック2008
- [[Google]] 開発言語 比較
- [[Yahoo]] vb6 vb.net 変換効率
- [[ezweb]] jubeat Snow Goose 日本語訳
- [[Google]] directx for visual basic6.0
- [[Google]] vb 冴子
- [[Google]] vb.net 2008 express カスタムコントロール 作成
- [[Google]] Visual Studio 2005 NOTES メール サンプル
- [[Google]] asp vb 基礎 & 変数 書き方
- [[Google]] ビジュアルベーシックN 現在時刻
- [[Google]] ビジュアルベーシックN 時計
- [[Google]] VBA作成高機能エディタ

