システム開発を行う上でVB(Visual Basic)という言語を良く耳にするのではないでしょうか。
VBはVBでもVB.NET、VBA、VBScriptとVBにも色々違いがあり、意外と知らないこともあったのでまとめてみました。
VB(Visual Basic)の歴史##
1990年年代にMicrosoftが開発していたプログラミング言語であり、BASIC→Quick Basic→VBという変化を遂げてきました。
「Visual」と名の付く通りボタンやテキストボックスをマウスで配置していくことにより、視覚的にアプリケーションを開発することができます。
自然言語にも近く馴染みやすい言語である事から、初学者にも優しい作りになっています。
従来「Visual Studio」という開発ツールを用いて開発しておりましたが、2019年4月以降「Visual Studio 2019 Community」というツールでも開発可能となっています。
VBAやVB.NET、VBScriptなどは、どれもVBからそれぞれの用途に合わせて改良された言語となります。
それぞれの歴史と特性##
VBとVB.NET###
VBはVer1.0~6.0とバージョンアップを重ねており、2002年のバージョンアップにより内部Verでは7.0となり、「.NET」というものがつくようになりました。
これが「VB.NET」になります。
2005年以降は「.NET」ではなく「Visual Basic 2005」と.NETがつかなくなっていますが、VB.NETと連続性のある言語になっています。
バージョンアップによるメリット
・オブジェクト指向への対応
・.NET Framework言語と同じ機能が使える
バージョンアップによるデメリット
・.NET Frameworkの標準ライブラリに従ったプログラミングが必要となった。
VB.NETの主な使用用途
・Webアプリ
・Windowsアプリ
・スマホアプリ
このように大きな変化を遂げた2002年のバージョンアップは、VB開発者にとって大きな分岐点となりました。
汎用性の高い言語になった一方で、従来のVBプログラマのノウハウが通用しにくいといったデメリットも発生していることから、変化に戸惑う開発者や変化に工数がかかる開発環境も一定数存在していることも事実です。
特に業務に密接に関わっているシステムである場合、変化によるリスクが大きいことから躊躇う企業も多いようです。
しかし、マイクロソフトからのサポート終了によるリスクを考え、重い腰を上げざるをえないといった状況にもなってきており、また一つ節目を迎えようとしています。
さて、VBについての歴史や特性を見てきたのですが、ここからはVBAとVBScriptについても触れていきたいと思います。
VBAとVBScript##
これらの言語はそれぞれ用途に合わせてVBが改良された言語です。
VBA(Visual Basic for Applications)###
MicrosoftがMS Officeの拡張機能として提供しているプログラミング言語になります。
VBとの違いは、機能に多少の制限があるものの、MS Officeさえあればすぐに使うことができるといった環境設定のコストが少ないことが挙げられます。
VBの場合は「Visual Studio」という開発環境が必要となりますので、MS Officeが導入されていれば開発を始められる分、コストや手間が少ないことがわかります。
※Word、PowerPoint、Access、Outlook、Internet Explorer、Microsoft Edgeなどにも実装されています。
VBAの主な使用用途
Excel業務を効率化するツールを作成する
VBScript###
VBScript は Visual Basic の構文を真似てつくられた、Windows の「スクリプト言語」です。
誕生の経緯としては、世界で初めて一般に本格的に普及したWebブラウザソフトウェアの一つである、Netscape NavigatorがJavaScriptを初めて実装したことにあり、マイクロソフト社がそれに対抗してVBScriptを作りました。
ここに関してはWindows版のInternet Explorerでしか動作しなかったことから、JavaScriptへの人気が勝る結果となりましたが、その後Internet Information Server 3.0に実装されたActive Server Pagesの標準の言語として採用されたことで、VBScriptは確固たる地位を確立することとなります。
しかし、2000年頃からVB.NETが推奨されるようになったことから、時代の流れと共にVBScriptは置き換えられ、衰退していきました。
まとめ##
VBと一括にいっても様々な用途によって住み分けられていることがわかりました。
.NET Framework初期の時代に作成されたデスクトップアプリやWebアプリの保守で利用され続けているVB。近年注目を集めるRPAにVB.NETの記法が取り入れられているものもありますが、言語としての人気の低さに加え、言語の進化が終わることが公式にアナウンスされたため、需要はゆるやかに落ちていくことが予想されます。
参照記事##
.NET Column
https://www.fenet.jp/dotnet/column/language/884/#VBNET-3
日経クロステック
https://xtech.nikkei.com/atcl/nxt/column/18/01040/102400002/
IT用語辞典 e-Words
http://e-words.jp/
Visual Basicユーザーは要注意、.NET 5より後では使えない可能性 | マイナビニュース
https://news.mynavi.jp/article/20200316-997140/
「Visual Basic」は.NET Coreでもサポートを継続 ~ただし、言語としての発展は終わり - 窓の杜
https://forest.watch.impress.co.jp/docs/news/1240998.html
Stack Overflowプログラム言語人気ランキング2017(好き/嫌い/習得したい)
https://insights.stackoverflow.com/survey/2017#technology-_-most-loved-dreaded-and-wanted-languages
Stack Overflowプログラム言語人気ランキング2020(好き/嫌い/習得したい)
https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved