+ PhoneGapって何だ
created 2013-08-08 modified 2014-04-17
1.概要
1.1 それはなにか
(1)意図すること:
HTML5やCSS3、Javascript等、Webアプリを構築する技術を使って、ローカルアプリケーションを構築しようとするもの。
(2)仕組み:
ネイティブアプリを薄皮として利用し、端末内のWebブラウザに file:/// URIスキームのHTMLを表示する。
これがアプリ本体で、あとは、表示は HTML5、制御はJavascriptで書いた「ローカルWebアプリ」として動く。
端末固有のハード機能「加速度センサー」や「カメラ」を Javascript から使えるように、各端末用のラッパーライブラリを提供してる。
(3)ビルド環境
統一の使用法で扱える、各端末用のビルド環境ツール(コマンド)を提供している。
コマンドで作ったプロジェクトを、各端末用のGUI風ビルド環境に取り込むことも可能。
1.2 対象デバイス
- iOS端末、Android端末、WindowsPhone、BlackBerry、Tizen、...
1.3 前提となるツール・ソフト
- 開発に必要な前提ツールや前提ソフトは、対象デバイスによって異なる。
- 基本は、端末開発社(Apple/Google/...)が提供しているSDK。
1.4 メリット デメリット
- 過去にWebアプリを作ってた人たちが、民族移動するのに使える。
- 端末開発社(Apple/Google/...)が推奨してる言語で作ったアプリより、だいぶ重い。
→なので、「どうでもいいアプリ」向け。
1.5 常識どおりです
リソース・速度で厳しい組み込み開発に、重いレイヤを入れるのは、これまでに死屍累々の、死亡フラグパターン。それを乗り越えるマジック要素を、何も提供していない。
イメージしやすい例として、
VisualBasic衰退期に、MicrosoftがVB開発者をWebアプリ開発に転用する、 Visual Web Developerてのを作って失敗してた。あれと同じ。
(ただし、HTML5の知識は、IT屋としては今後必須になる(=推測)ので、将来性が全くない訳ではない)
2.背景深読み
2.1 大人の知識:カネの流れを推測
もとはカナダのNitobi社が作っていた→Adobeが買収した。
2011年に、Apache財団に Cordova の名前でコードを寄贈した。以降、最先端の開発版は Cordova であり、そのディストリビューションの一つが PhoneGap であるという位置づけにした。
Cordovaの管理方式はApacheの方式に従う。
PhoneGapはAdobeが管理する。
2.2 ドキュメントサイトの出来の良さ・悪さ
現状、Adobeは「いらない子」状態にみえる。
- PhoneGapのサイトを見るより、Cordovaのサイトを見るほうがよい。
- Cordovaのドキュメント群を、Cordova->PhoneGapに置換しただけで公開してる。
2.3 Adobe は何がしたいんだ?
Adobeはもともと、Dreamweaverという、デザイナー好みなWebサイト開発ツールを売っていて、大きなシェアを持っていた。(=事実)
Dreamweaverを今後どう作ってどう売っていくかという戦略の話で、技術が近い PhoneGap を買って、味方に取り込みたかったのではないか。(=推測)
- 同じECMAScript系(=事実)
Javascript = ECMAScript)
- HTML5の出現で、Flashは斜陽。(=事実)
Dreamweaverを買うのは「オシャレ風な」Webサイトを作ってるデザイナー会社。
そういう人たちの「俺らもスマホアプリつくんなきゃ」危機意識を取り込もうとしたっぽい(=推測)
デザイン会社に要注意
Dreamweaverの話からの妥当な推理として、
「スマートフォンアプリの 画面遷移だけ を受注したいWebデザイン会社」
には、魔法のツールに見えるだろう。
実装会社はクソ重いレイヤで苦労させられると推測する。
トップ会社メンバを含む御前会議では、全力で対案を出すべし。
参照
Cordovaのサイト http://cordova.apache.org/ PhoneGapのサイト http://phonegap.com/
ここまで