モダンWebでは、Webブラウザーに処理が分散するのに伴い、メインの開発言語がサーバー向けのJava、C#、PHPなどから、ブラウザーで動作するJavaScriptに変わる。つまり、従来と異なる言語、実行環境でアプリの主要部分を開発することになる。開発者にとっては、とても大きな変化だ。

 したがって、モダンWeb導入を成功させるためには、自社の環境に適した効率良い開発環境を構築し、この変化をうまく乗り切ることが重要になる。JavaScriptの開発環境には様々な選択肢があり、それらを選択して組み合わせる必要がある。組み合わせによって開発生産性は大きく違ってくる。

 そこで、今回はモダンWebアプリの開発環境について解説する。前半は開発環境の概要と選択基準を解説し、後半は開発環境の組み合わせ例を紹介する。

従来のWebアプリ開発との違い

 図1は、標準的なモダンWebのシステム構成の概略である。従来のWebと比べ開発に関する違いは以下になる。

図1●モダンWebのシステム構成概略
図1●モダンWebのシステム構成概略
[画像のクリックで拡大表示]

Webサーバー側

 Webブラウザーへの処理の分散に伴い実装する機能は少なくなるため、開発量は減少するものの、基本的に従来の開発環境をそのまま利用できる。ただし、HTMLの代わりJSONデータの処理が必要になる。主要なサーバー向け言語ではJSONがサポートされているが、処理できない場合は外部ライブラリーの追加などで対応する。

 必須ではないが、Webブラウザーからのリクエスト受付をWeb APIで標準化したり、開発言語をブラウザー側とそろえてJavaScriptに変更したりすることもある。

Webブラウザー側

 従来サーバーで実装していた機能をWebブラウザー側で実行するため、開発量が大幅に増加する。 開発言語はJavaScriptに限定され、実行環境もWebサーバーからWebブラウザーへ変わる。つまり、従来と異なる開発環境でアプリのほとんどを開発することになる。

 その中でもJavaScriptの使いこなしが、モダンWebへ移行する際の最大のハードルだ。 読者の中にはJavaScriptの経験があり、使いこなすのに困難を感じたことがない人も多いだろう。ハードルになる理由を次に説明する。