一口に「Webアプリケーション」と言いますが、その実体は様々です。まず、Webアプリケーションの定義を明確にし、その後、各種Webアプリケーションの共通点と相違点を見ていきましょう。
- Webアプリケーションとは? -
本記事のタイトルでもある「Webアプリケーション」という言葉、いつ頃生まれどう広まったのか――実のところ、あまり明確ではありません。同義語として、おそらくIBM社が広めたと思われる「ウェブリケーション」があります。これは、語感からおわかりと思いますが“Web + Application”を意味する造語で、英語ではWeblicationと書きます。
筆者自身は、ウェブリケーションという言葉が登場する以前から、Webの機能、つまりHTTPプロトコルを使ってネットワーク上で実行されるアプリケーション――という意味で「Webアプリケーション」という言葉を(特にどこかから拾ってきたという訳でもなく、ごく自発的、自然発生的に)雑誌記事などで用いていたので、今でもWebアプリケーションという言葉を用いています。
現在ではIT用語辞典にも載っているので、少なくともIT業界では一般的な用語として定着したと見てよいでしょう。その定義は、先述したように「HTTPプロトコルを使ってネットワーク上で実行されるアプリケーション」という、至って単純なものです。従って、その意味するところは非常に広く曖昧でもあります。
- 広まったのはASP以降 -
まず実行環境ですが、HTTPプロトコルを用いていれば、インターネットでもイントラネットでも構いません。基本的には、「TCP/IPプロトコルを基盤としたネットワーク上で、WebサーバーとWebブラウザ間で情報を交換する環境」であればよいということになります。
「アプリケーション」という言葉も非常に広い意味を持つため、例えば、CGIやSSIを利用してブラウザのウィンドウに単に「現在の時刻は 15:08:23 です」と表示するだけの処理でも、Webアプリケーションと呼べることになります。
ただ、Webを介して実行されるプログラムが主にCGIを利用していた時代には、Webアプリケーションという言葉は存在しませんでした。この言葉が明確な意味を持って広まり始めたのは、Microsoft社のIIS(Internet Information Server※1)で動作するサーバーサイドWebアプリケーション実行環境のASP(Active Server Pages)が登場してからです。
※1 登場した当時は“~Server”と命名されていましたが、Windows 2000に搭載されたIIS 5からは“~Services”という名称に変わりました
- 業務処理の環境が整ってから -
ASPの登場によって、それまで非常に面倒だったデータベースとの連携や表を使った定型書式の出力処理などが簡単に記述できるようになり、Web上で大規模データベースを使った業務アプリケーションを実行する基盤が整い始めました。
そのあたりから、「TCP/IPネットワーク上でプログラムを実行する」という形態に対して、「サーバーで実行したプログラムの結果をWebブラウザで見る(CGI)」とか「Webサーバーが送ってきたプログラムをブラウザで実行する(JavaアプレットやJavaScriptなど)」といったイメージから、「Webでアプリケーションを実行する」というイメージへと変化が生じてきたようです。
つまり「Webアプリケーション」という言葉がリアリティを帯び始めたのは、Web上で実行される処理が単なるプログラム(JavaアプレットやCGIプログラム)から、実務レベルで一定のクオリティーを保った業務アプリケーションへと変化した時期でもあるのです。このことは、非常に重要です。
|
|
|