ネイティブパッケージングの難点
こんにちは、ゼノフィnakamuraです。
2007年に iPhone が登場してから、新しいモバイルの時代が始まりました。今やスマートフォンは、ネットワークに接続された最も便利なデバイスであり、アプリケーションやデータにアクセスできることが期待されています。これらのモバイルテクノロジーへの欲求は、OS が違う無数のモバイルデバイスの大量流入をもたらしました。
多くのアプリケーション開発者は、この複数のデバイス、複数のプラットフォームの世界でネイティブアプリケーションを開発する非効率性にすぐ気づきました。その代わりに HTML5 を中心とする Web 技術やオープンスタンダードを受け入れることを選択しました。その移行 (現在はハイブリッド開発と呼ばれています) は、HTML5 に基づいたアプリケーションをパッケージして、デバイスで動作させて、カメラ・GPS・加速度センサーなどのハードウェア機能へのアクセスを提供するツールの需要を発生させました。
2009年、この需要に応えるために PhoneGap が開発されました。当時、PhoneGap は HTML5 アプリケーションを現在も支配している App Store の配布モデルに適合したことで、とても評価されました。PhoneGap は一般的なアプリケーションの重要なニーズに従って、多勢の HTML5 開発者が App Store の配布システムにアクセスできるようにしました。しかし、この何年間、エンタプライズのアプリケーション開発者にとって、PhoneGap の足りない部分が明らかになってきました。
次のような欠点があります:
- セキュリティ – 重要なデータは PhoneGap のキャッシュやデータストアに暗号化されてない状態で格納されます。
- 複雑なアプリケーションライフサイクル – 複数プラットフォームの用にビルドする必要があって、そのアプリケーションのライフタイムの間はバイナリのデプロイとメンテナンスを管理する必要があります。
- モバイル OS の変更に影響される – モバイルデバイスベンダーからの変更や過去の非互換性があると、パッケージされたアプリケーションが動作しなくなる恐れがあります。
- App Store Distribution – エンタプライズアプリケーションを一般的な App Store で配布するのは非効率的です。
現在は 2014 年です。企業は充分苦労してきました。アプリケーションとデータのモバイル化に対して、長期的なソリューションを欲しています。その解決方法は HTML5 アプリケーションを安全で管理されている実行環境に直接デプロイすることです。このようなソリューションには次の長所があります。
- エンドユーザーは高度なアプリケーションユーザー体験ができて、個人情報が守られ、アプリケーションの疲労から救われます。アプリケーションも常に最新版に更新されます。
- 開発者はWebと昨今のモバイルデバイスの両方の利点を享受します。 複数のプラットフォームにアプリケーションをパッケージする必要はありません。さらにアプリを配布する時に、App Store との面倒なやりとりをしなくてすみます。
- 組織や企業はアプリ、データ、ユーザーのライフサイクルを保護、管理でき、同時にアプリのスプロール化 の対策もできます。 IT 管理者は業務の状況に従って、アプリやデータへのユーザーのアクセスを許可したり、禁止したりでき、ユーザーの個人情報に触れることなく、ユーザーのデバイスからビジネスデータを削除することもできます。さらに、そのデータはデバイス上で暗号化されているので、情報の漏洩から保護されます。
PhoneGap はそれが必要だった時期には役に立ちました。しかし、あなたの企業が上記の点に関しての懸念があるなら、現在ではより良い解決方法があります。エンタプライズ向けのアプリケーションを開発する場合には、もう PhoneGap を手放す時期です。
Sencha が PhoneGap の後の世界への移行をお手伝いします。詳しくはこちらへ。