新刊ピックアップ

今サーバサイドJavaScriptが人気の理由

この記事を読むのに必要な時間:およそ 1 分

JavaScriptが歩んだ道のり

JavaScriptが1995年に誕生して今年で15年を超えます。誕生当初しばらくはWebブラウザ側でプログラムを実行する補助的な言語としての役割しかありませんでした。ホームページを作成する際に,入力チェックや時刻表示などに利用したことがあるのではないでしょうか?

しかしここ数年JavaScriptの利用法が大きく変わってきています。そして今後新しい可能性に広がっています。

JavaScriptの浮上のきっかけ

長らくサブ的な位置ずけのJavaScriptが一躍見直されるきっかになったのが,皆さんもご存じのAJAXの登場です。AjaxはWebアプリケーションの普及により,Webブラウザ側にリッチなユーザインターフェースを実現したいという解決策の1つとして2000年代中盤に生れたものです。

この非同期制御をJavaScriptで実現したことで,クライアント技術としてのJavaScriptは一定の評価をうけるまでになります。

そして現在

AJAXの普及以後,かつて結果を表示させるだけだった頃と比較するとクライアント側の役割も変わってきました。

かつてのWebアプリケーションはほとんどの処理をサーバ側で行っていましたが,現在では負荷分散を目的として積極的にクライアント側で処理を行う方向に変わってきています。その結果サーバ側の処理とクライアント側の処理をどのように分担させるかの判断が難しくなってきています。たとえば当初設計段階ではサーバ側の処理として実装した機能が,途中の段階でクライアント側で処理させる方が良いという判断になったとします図A⁠。

図A

その場合,サーバ側/クライアント側どちらも同じ言語で実装されていれば,置き換えはスムーズですが,別々の言語で実装されている場合,言語の違いによるコードの書き直しが発生します。そこで近年,サーバサイドの実装言語としてJavaScriptを利用してみようという動きが活発になっています。

もちろんその背景には,技術的な躍進もあります。以下に簡単に説明します。

CommonJS

現状,多くのJavaScriptライブラリは独自のAPIを提供しています。他のプログラミング言語では当たり前にあるようなファイルの読み書き機能すらJavaScriptの標準APIに存在しないので,各ライブラリが独自APIで提供しています。

独自APIの乱立はライブラリ開発者にとっても,ライブラリ利用者にとっても負担です。このため,CommonJSという標準APIを定める動きが現れています。

JSON

Web上のデータ交換フォーマットはXMLが主流でしたが,JavaScriptのリテラル表記をベースにしたデータフォーマット形式であるJSONが主流になりつつあります。

HTML5

2010年のHTML5の登場により,高機能なWebアプリケーションが実現できる可能性があります。特にサーバサイド側の影響として,ネットワーク(WebSocket)やスレッド(Web Workers)などのAPIによりJavaScriptの選択肢の増加に繋がります。

JavaScriptエンジンの高速化

グーグル社が2008年にWebブラウザGoogle Chromeと共に発表したJavaScriptエンジンv8に代表されるJavaScriptエンジンの高速化です。

その他様々の影響があります。サーバサイドでのJavaScriptの活用は今まさに動き始めたばかりです。詳しくは下記の書籍を参考にしてください。サーバサイドJavaScriptをとりまく技術を網羅的に解説しています。