★私、VB.NETの味方です。

世の中にはVB.NETを一段下のプログラム言語と見るプログラマーが多いようだ。特に新しいPHP、PythonなどのWebアプリを手掛ける若い世代に多い。

その昔「私、プロレスの味方です」という本があったが、さしずめ私の場合「私、VB.NETの味方です」ということにでもなるのだろうか?

私の子供の頃はプロレスの最盛期だった。特に「力道山」の試合を夢中で見たものだった。そのプロレスが所謂「総合格闘技」の勃興によってだんだん人気を落としてくる。そのような頃に書かれたのが上記の「私、プロレスの味方です」だった。ところが、当の総合格闘技で活躍をする選手は意外なことにプロレスラーが多かった。髙田 延彦、桜庭和志などの名前がすぐに浮かぶ。プロレスのファンたちは大いに溜飲を下げたものである。話を戻そう。

私がVB.NETを高く評価する理由を、一つだけ挙げろと言われたら、その答えは「VisualBasic for Application(VBA)の存在」と言うことに尽きるのではないかと思う。ExcelやAccessでも使われているVBAは、VB.NETと元来同じ根っこを持ったプログラム言語であり、文法が似通っている。片やVBAはAccessやExcelに於いてシートやテーブルといったオブジェクトを操作するのに対し、VB.NETはWindowsアプリケーション全般を操作するといった違いはあるものの「with」構文にみられるお馴染みのスタイルが、これらの言語がひとつのグループであることを強く実感させる。私が他の言語をあまり知らないせいもあるのだが、VBには無限の可能性が秘められている、という気がしてならない。尤もこれは完全に「好みの問題」でもあるとは思うのだが。

ところで「最強のデータベースアプリケーション」とは?どのようなものだろう?それを一言で表わすとするならば「ハイブリッド」ということになるのではないだろうか。私が考える「最強のアプリケーション」は、

①SQLServer(データベース)
②VB.NET(フォーム)
③Access(レポート)
④Excel(表計算)

この4種を掛け合わせたものだ。

まず①②。SQLServerとVisualBasic.NETには元々強い「親和性」がある。理由は簡単で、どちらもMicrosoftの製品だから。これらのツールは、開発の段階から連携して使うことを「前提」に作られているわけだ。両者の組み合わせによる効果は1+1=2ではなしに=3、4・・・10にもなると言って良い。またVB.NETではデータベース言語の「SQL」を文字列として駆使することが出来る(尤もこれはVB.NETに限ったことではないが・・・)。さらにSQLServer上ではストアドプロシージャを始めとした「関数」を作ることも可能だ。またそれらはVB.NETから自由に呼び出すことが出来る。時としてこれが絶大な省力化効果を生む。

③そして次に、VB.NETが逆立ちしてもAccessには敵わない機能というのがある。「レポート」である。レポート機能こそがAccessの強みであり、唯一の「存在価値」であると言って過言ではない。上記のVB.NETとSQLServerを以ってしても、Accessをレポート作成ツールとして使うこと無しには決して満足なアプリケーションとは成り得ないであろう。

最後が④のExcel。これがどうしてどうして、良い仕事をしてくれる。「表計算」という得意分野に於いてExcelを凌駕するものはあり得ない。孤高の存在と言って良いだろう。官公庁を始めとして多くのデータベースが「Excel形式」でウェブ上に公開されている。例えば「郵便番号」のデータ。それに「源泉所得税」や「社会保険料」のデータ。これらはデータ更新が随時行なわれるが、ファイルを入れ替えるだけで最新バージョンに即座にアップ出来る点が大きなメリットである。

例えば私の「VisualBasic人事システム」について述べてみよう。私の作るデータベースソフトでは、これまで述べたマイクロソフトのアプリケーションの全てを迷わず使う。各アプリケーションにはそれぞれに得意分野があり、それを「適材適所」に当て嵌めていく、というのが私の基本的な考え方だ。郵便番号による住所の自動入力。このプログラムでは郵政省のExcelデータを読み込んでいるし「税額計算表」では、国税庁と全国社会保険協会のデータから源泉所得税額と社会保険料を検索している。印刷ボタンを押すとAccessのレポート機能を利用した「印刷プロジェクト」が開き、洗練された帳票を印刷することが出来る、といった具合である。データベースソフトとしての大元の機能は、SQLServerとVB.NETに大きく頼っていることは言うまでもない。

このように、4つのツールを掛け合わせた「ハイブリッド」が、私の考える「最強のデータベースアプリケーション」というわけだ。

NO IMAGE