Webアプリ開発事始 第22回

Webアプリケーションの現状とこれから 長谷川裕行
有限会社 手國堂

プログラム実行形態の変遷

元をたどれば、プログラムは中央の機構によって集中管理されるものでした。ネットワークの発達とコンピュータの小型・高性能化によって、管理と実行の形態が分散化したのですが、Webによってそれがまた集中管理方式に戻ってきたと見ることができます。


- ホスト方式からC/S方式へ -

今では、パソコンからプログラミングの世界に入った人が大半を占めるため、ピンとこない人も多いと思いますが、元々プログラムは通信回線を使って実行するものでした。汎用機(メインフレーム)が主流だった時代、プログラムはホストと呼ばれる大型のコンピュータ※2が集中管理し、ユーザーはディスプレイとキーボードの付いた端末からそれを操作するのが一般的な使い方でした。もちろんそれ以前には、パンチカードや穿孔テープの時代があったのですが、そこまでさかのぼると話が別の方向へ行くので、ここでは敢えて避けることにします。

その後、ミニコンピュータ※3と汎用OS・UNIXが登場してネットワークと分散処理が広まり、ワークステーションによってプログラムの実行形態が大きく変化しました。プログラムを個々の端末レベルで実行し、その結果や必要な資源(ディスク領域やプリンタなど)を他のコンピュータに頼る――というクライアント・サーバー型のネットワークです。

大型のコンピュータはプログラムの実行基盤ではなくなり、プログラムやデータ、ユーザー情報などを保存・管理する機構となりました。

やがてパソコンが登場すると、元々ネットワークにつながっていないスタンドアロンの状態が前提となりました。プログラムは個々のコンピュータが個別に実行するものとなったのです。

※2 「コンピュータ」とは元々大型の汎用機を意味するので、「大型のコンピュータ」というのはおかしな表現ですが、小型化されたコンピュータが当たり前の現代では、この表現も陳腐ではなくなりますね
※3 「ミニ」というのは「汎用機より小さい」という意味で、パソコンより遙かに大きな機械です


- 3種類の実行形態 -

この時代、プログラムの実行形態は大きく3つに分かれました。1つは、伝統的な汎用機による集中管理です。閉鎖的なネットワークを構築し、本社または計算機センターに配置されたホスト・コンピュータを支社などの遠隔地から端末機で利用する形態です。金融・保険など古くから汎用機による集中管理体制を敷いていた企業や組織が利用しました。

2つ目は、ミニコンピュータやワークステーションを使ったUNIXのクライアント・サーバー方式で、これも閉じたTCP/IPネットワークを使って本社~支社間などで情報をやり取りしていました。海外とのやり取りが多い外資系企業や貿易関係、大学や企業の研究機関が主な活躍の場です。

3つ目は、過去にコンピュータをあまり利用してこなかった企業や組織で、1980年代に入っていきなりパソコンで経理や在庫管理などを始めたところです。ネットワークの機能を持っていないパソコンで処理を行うため、自ずと1台完結型のシステムとなってしまいます。

3番目の実行形態を採っていた組織は、やがてパソコンの性能が向上してネットワークを利用できるようになると、プリンタやディスクを共有するクライアント・サーバー型のネットワークが広まり、パソコンのプログラム実行環境は先に掲げた2番目――UNIXのネットワークに近いものに変わってきました。


- 旧方式との共通点と相違点 -

このように見てくると、Webアプリケーションの2つの実行形態――サーバーサイドとクライアントサイドは、ホスト・コンピュータによる集中管理とUNIXを中心としたクライアント・サーバー型ネットワークの関係に対応していることが分かります。

ホスト方式: ホストでプログラムを実行し、操作を端末で行う
サーバーサイド: Webサーバーでプログラムを実行し、操作をクライアントで行う

クライアント・サーバー方式: サーバーにプログラムを保存し、クライアントが個別に実行する
クライアントサイド: Webサーバーのプログラムをクライアントに読み込んで実行する

ただ、過去の方式とWebアプリケーションには、大きな違いがあります。これまでのネットワークを介したアプリケーションの実行形態では、実行するアプリケーションがハードウェアやOSに依存したものでした。特に汎用機やオフィス・コンピュータ(オフコン)はOS自体が専用のものなので、アプリケーションを他の環境に移植するには、再コンパイルはもちろん、ソースの書き直しや、場合によっては設計自体を見直さなければならなかったりします。

一方Webで実行されるアプリケーションは、Webという様々なコンピュータが接続される環境が前提なので、機種やOSの違いが吸収されるという利点があります。

Webアプリケーションの利点を紹介する場合、パソコンのネットワーク環境を前提にして、「クライアントごとにインストールを行う必要がない」といった点が強調されますが、汎用機やミニコンピュータを使った大規模なネットワーク環境での利点の方が、実はそれ以上に大きいのです。


トップページ
「Webアプリ」という言葉の起源
プログラム実行形態の変遷
ホスト方式からC/S方式へ
3種類の実行形態
旧方式との共通点と相違点
Webの今とこれから
開発現場とWebアプリ
あとがき

Copyright © MESCIUS inc. All rights reserved.