Ruby、PHP、Perl、Pythonなど……サーバサイドプログラミング言語
Webアプリはサーバサイドのプログラミングに対応した言語が使われています。今ではLightweight Language(LLと略される)と呼ばれるスクリプト言語がさまざまな規模のWebサービスで使われています。たとえば、以下のようなプログラミング言語があります。聞いたことがあるものがいくつかあるかもしれませんね。
- Ruby
- PHP
- Perl
- Python
また、LLに限らず、JavaやCでも似たようにWebアプリをつくることは可能です。ちょっとした余談ですが、こうした言語を使ってWebアプリをつくるために楽ができるフレームワークもいくつかあります。Ruby on Railsは有名なフレームワークの1つです。
こうしたサーバサイドのプログラミングでは、ブラウザ等のクライアントからのリクエストを受け取り、その内容いかんによって最適な挙動をし、HTMLなりをレスポンスとして返却します。
JavaScriptとWebアプリ、どっちを使うか迷ったら
やや極端ですが、例を挙げて説明しましょう。ブラウザにアクセスすると、現在の時刻を表示してくれるサイトがあるとします。

この時刻表示を実現するのに、実はサーバサイドでやってしまう方法と、前回解説したJavaScriptを使う方法と2種類あります。
JavaScriptで「今何時?」を実装する
JavaScriptで行う場合、HTMLの中で以下のようなコードを書くと実装できてしまいます。

この場合、ブラウザがHTML内のJavascriptプログラムを計算して時刻を表示します。なので、サーバサイドのプログラムは必要ありません。
サーバサイドで「今何時?」を実装する
次に、サーバサイドで行う場合を考えてみましょう。そのWebページにアクセスが来ると、Webアプリがサーバ側で現時刻を取得し、それをテキストを表示させる仕組みです。Perlによるコード例はこんな具合です。

これをサーバソフトウェアで起動させると、JavaScriptの時とまったく同じようにアクセスした瞬間の時刻が表示されるようになります。
まったく同じ結果を出すにも、JavaScriptに任せるのか、Webアプリとしてサーバ側で処理させるのか2つの方法があります。時刻表示くらいであればJavaScriptでも問題ありませんが、より複雑な動作を求めるのであれば、サーバ側でWebアプリを使ったほうがいいでしょう。
Webの記事を読むのもいいけれど、リアルゆーすけべーさんに会って直接講義を受けませんか?
本講座では、実際のWebサービス制作における事例やエピソードを交えながら、ディレクターの役割と必要なスキル、そしてチームの共通言語となるWeb基礎技術について学びます。Webディレクターに成り立ての人やWebクリエイターとのやり取りがイマイチうまくいかない人にオススメです。