サーバサイドのプログラミングって?


現在、Javaが最も注目されているのは「サーバサイド」の世界であるといえます。皆さんの中には、それでJavaに興味を持った人も多いことでしょう。だけど、「サーバサイド」って、一体なんでしょう? サーバの中で動くプログラムのこと? それってどういうものなの? 普通のプログラムと何が違うの? プログラミングだけでなくてサーバの難しい知識もないとダメなの? そうした疑問を持つ人もきっと多いはずです。

サーバサイドというのは、文字通り「サーバ側で(つまりサーバの中で)動く」ということです。この場合のサーバとは、「Webサーバ」のことです。Webサーバというのは、皆さんがWebブラウザであちこちのホームページを見たりしている、そのホームページが置かれているコンピュータのことですね。この「ブラウザでアクセスするとWebページを表示したりするサーバ」がWebサーバ、そこで動くプログラムを作るのが「サーバサイド・プログラミング」というものなのです。

では、Webページで必要なプログラミングって、一体どういうものでしょう? 皆さんの中には自分でブログやホームページを作ったりしたことのある人もいるでしょうが、そうしたものとは違うのでしょうか? ちょっと整理してみましょうか。
サーバマシンは、サーバ・プログラムから必要に応じて他のプログラムを実行したり、スクリプトという簡易言語を実行したりして動いている。この「サーバ側で動くプログラム」を作るのがサーバサイドの開発だ。


●カウンタや掲示板、ゲストブックなど
まず思いつくのはこうしたものでしょう。これらはサーバにそのためのプログラムを置いて動いています。つまり、れっきとした「サーバサイド・プログラミング」なのです。ただし、こうしたものでJavaが使われることはあまり多くありません。これらは一般に「CGI」と呼ばれる機能を利用しており、Javaよりもっと簡単なperlやPHPと呼ばれるプログラミング言語を使って作られることが多いといえます。

●ブログもサーバサイド?
今やホームページといえば「ブログ(Web log)」といっていいほどに広まっていますが、このブログも実はサーバサイドのプログラミングによって作られています。多くの人は大手ポータルサイトなどによる無料のブログサービスを使っていることでしょうから、あまりプログラミングなんてことを意識することはないでしょう。が、実際にサーバの中では、自動的にブログの記事を生成しレイアウトしていくプログラムが動いているのです。

●オンラインショッピング
オンラインショッピングは、サーバサイドのプログラミングというものがどういうものかもっとも端的にわかるものでしょう。これらのサイトでは、商品の表示、注文、データの管理などをサーバ側で行わなければいけません。

●データベースを必要とするものすべて!
オンラインショップに限らず、さまざまデータがあって、それをリアルタイムに更新しないといけないものというのはいろいろあります。例えば図書館の貸し出し。レンタルショップのレンタル情報。電車の路線情報。各種の辞書の類。どれも今ではWebブラウザから利用できるサービスです。これらもみんなサーバサイドのプログラムによって処理されているのです。

いかがです? 普段、普通に使っていたWebサイトの多くが、実はサーバ側にあるプログラムによって動いていたのだ、ということがわかったのではないでしょうか。一般的な、ただ用意されている絵やテキストをそのまま表示するだけのサイトならサーバ側にプログラムを用意する必要はありません。が、サーバ側でリアルタイムに情報を収集して表示するようなものは、たいていサーバ側にプログラムが用意されているのです。

これらは、Webブラウザからアクセスして見る限りは、普通のホームページとなんら違いはありません。ですから、その背後でプログラムが動いているなんて想像もしないことでしょう。サーバサイドの開発というのは、そういう「普通の人からは見えないところで動くプログラム」を作る仕事なのです。