HTML5はクロスプラットフォームの標準技術
HTMLはWebのための標準マークアップとして誕生し、HTML5ではその周辺の技術(CSSやJavaScript)も巻き込んで大幅な機能拡張が行われました。そのなかには「オフライン対応」や「アプリのパッケージ化」といった、Webアプリをネイティブアプリのように使うための仕様も盛り込まれています。
こうした仕様は現在のブラウザでは対応できませんので、Polyfill(現在のブラウザの欠けている機能をライブラリーなどで補うこと)の存在が必要になります。その役割を担うライブラリーとして、最も使われている存在がCordova(コルドバ)というオープンソース製品です。
Cordovaを使うと、HTML5を用いて、iOSやAndroid、WindowsといったOSに対応するクロスプラットフォーム(複数のOSに1つの言語で対応すること)アプリを開発することができます。WebサイトがどのOSで見ても同じように表示され、JavaScriptが実行されるのと同様、Cordovaで開発したアプリは、Cordovaが対応しているOSであればすべてのOSに対応することができます。ちなみに先述のOS以外としては、Firefox OSやBlackberryなどにも対応しています。
Apache Cordovaに対応する各種ツール
それではVisual Studio周辺のCordovaアプリ開発機能について、簡単に見ていきましょう。
Visual Studio 2011で登場した「Multiplatform Apps Development」機能は「Visual Studio Tools for Apache Cordova」と名前を変え、Visual Studio 2013から利用できるようになりました(以下、「VS Tools for Cordova」と略します)。さらにVisual Studio 2015では、このプラグインにさまざまな機能強化が行われただけでなく、標準としてバンドルされるようになりました。
また、Visual Studio 2013以降では、同じCordova向け開発ツールとして「Monaca for Visual Studio」という製品を使うこともできます(以下「Monaca for VS」)。こちらもVisual Studioに別途組み込むエクステンションとして利用できますが、VS Tools for CordovaがiOSアプリの開発やビルドにMacマシンが必要なのに対して、クラウドサービスを経由することでその問題を解決していることが特徴です。
さらにVisual Studio 2015と同時にManifoldJSという新しいサービスも発表されました。これはWebサイトを入力すると、そのネイティブアプリがパッケージとしてダウンロードできるサービスです。このManifoldJSもCordovaを裏側で使用しています。
このようにさまざまな開発ツールが提供されていますので、これらの違いを把握することが重要です。Visual Studio標準のCordovaアプリ開発環境およびMonaca for VSについては、『Visual Studio“だけ”でiOSとAndroidアプリが作れる「Monaca for Visual Studio」』をご覧ください。Visual Studio 2013に向けて書かれたものですが、Visual Studio 2015でも適宜読み替えてご活用いただけます。
本記事では、特にVisual Studio 2015に焦点を当て、VS Tools for Cordovaを軸としたCordovaの開発ツールとその周辺環境について紹介していきます。