見出し画像

Visual BASIC - 登場前夜

VBの話を書こうと思ったのですが、ここに至るまでの道のりの説明が長くなりそうなので、まずウィンドウズの歴史に触れておきます。

マイクロソフトはアップル社のマッキントッシュ(1984年)が成功したのを見て、ウィンドウズというGUIベースのOSを開発しました。

最初にリリースされた1.0(1985年)は、MS-DOSの中で動くグラフィカルなアプリでしか無く、ウィンドウも重なることは許されずタイル状に画面を分割することしか出来ませんでした。またCPUも8086ベースでメモリ空間が1Mしかなくグラフィカルなコードを走らせるには圧倒的にメモリが足りません。CPUの能力不足と対応アプリが殆ど無かったために、日本語への対応も行われず英語環境であっても殆ど使われることは無く、壮大なデモプログラムに過ぎませんでした。

続く2.0(1987年)で、ようやくウィンドウの重ね合わせが出来るようになるなど、細かな改良が行われました。やはり8086ベースであるもののEMS/EMMと呼ばれたバンク切り替えメモリを活用して必要なメモリを確保していました。その後の2.1(1988年)では80286のメモリ空間の一部をXMSメモリとして使えるようにし、翌年にはようやく日本語版も登場しました。とはいえ充実していたMS-DOS環境から乗り換えるだけのメリットはなく、使えるアプリもマイクロソフトのものくらいしかありませんでした。この時代は必ずしもウィンドウズを使わなくてもGEMなどの他のGUIプラットフォームを使うという選択肢もありました。

ここまで苦労してきたウィンドウズですが、3.0(1990年)で遂に80286ならではの拡張モードで動作できるようになり、MS-DOSでは扱えない1Mを超えるメモリを扱うことができるようになりました。翌年には3.1もリリースされ、マルチメディアやネットワークなどの拡張も可能になります。MS-DOSで機種ごとに対応が必要だった機能が取り込まれた結果、ようやくウィンドウズが広く使われるようになり始めました。テキストベースでは IBM が推している OS/2 との戦いが繰り広げられており、日本においても MS-DOS ベースの日本語ワープロが大きなシェアを持っていた時代なので、ウィンドウズの普及も一筋縄ではいきませんでした。

GUIベースのOSになった結果、表示や印刷にフォントが必要となりますし、操作もキーボードからのコマンドではなくマウスによる操作がメインになります。プログラムのコードもイベントを起点に書くスタイルに変わるなど、今までに蓄積されたノウハウが役に立たなくなり、新しい開発環境が必要になりました。当初はもっぱらC言語(MSC V6/1989年)からウィンドウズのAPIを呼ぶSDKによる開発が中心で、アプリケーション開発は敷居が高いものでした。

マイクロソフトはBASICがお里の会社ですから、ウィンドウズにおいてもユーザが作成するようなアプリケーションはBASICで開発するようにすべきだと考えたのでしょう。そこでQBを参考に急遽開発されたのがVB1.0(1991年)です。この最初のバージョンは、ウィンドウズが持つ基本的なオブジェクトをサポートし、イベント処理を構造化されたBASICで記述できるとても良く出来たものでしたが、日本語はサポートされず細かな部分での機能不足も目立ちました。またQBで構造化されたBASICに慣れていた人もそれなりには居ましたが、慣れ親しんだ行番号のある古典的BASICの世界からの距離は遠く、その時代から高速な処理が要求される時に使う外部で作成されたバイナリとのリンクが難しかったことから、本格的な活用は進みませんでした。

日本ではウィンドウズ版VBに先立ち、MS-DOS版のVBが1992年にリリースされ、それまでQBの諸々の制限で苦しんでいた人たちに使われるようになりました。特にクイックライブラリと呼ばれるバイナリとのインターフェースが明確になったことで、実用的なアプリを作成できるようになり、スクロール可能なフォーム画面は画面設計に苦労していたMS-DOSアプリの作成者からも歓迎されたのだと思います。

なお、MFCと呼ばれるクラスライブラリが整備されたC++コンパイラがリリースされたのも1992年で、この翌年にようやく日本語も使えるウィンドウズ版VBである2.0がリリースされました。こうして長い道のりを経て、ウィンドウズを中心としたGUIベースのプログラムを開発できる土台が整ったわけです。

ということで、VB自身の話は次の機会に。

Visual Basic

#プログラミング言語 #VisualBasic #VB #Windows #BASIC #QB #MSDOS

この記事が気に入ったらサポートをしてみませんか?