SlideShare a Scribd company logo
1 of 30
Download to read offline
Apache Cordvaの話
2014年6月10日
アシアル株式会社 田中正裕
MASAHIRO@ASIAL.CO.JP
120分聞けばドヤ顔で語れる Apache Cordova スーパー勉強会
自己紹介
田中正裕
アシアル株式会社 代表取締役
Twitter: @massie
E-mail: masahiro@asial.co.jp
アシアル執筆の最近の書籍
2011年発刊、PhoneGap 0.9ベース
アシアル株式会社
事業内容
HTML5アプリ開発、ハイブリッドアプリ開発、ネイティブアプリ
サーバーサイド(PHP)開発、インフラ、教育事業など
PhoneGap/Cordovaの会社
 PhoneGapを用いたアプリ開発
 Monaca
 http://monaca.mobi/
 Onsen UI
 http://onsenui.io/
Monaca
 クラウドベースのPhoneGap/Cordova開発環境(GUI)
 iOS, Android, Windows 8対応
Firefox OS, Chrome Appsに近日対応予定
 コマンドラインにも近日対応
 無料~(商用利用でも)
 デバッガーを組み込み
 日本語サポート・ドキュメント
 Windowsマシンでも開発OK
http://monaca.mobi/
Monacaのユーザー
 2000アプリが既にリリース
 200以上の法人アカウント
 カジュアルアプリのデベロッパー
 システムインテグレータの方
 同じスキルでiOS、Androidいずれ
のアプリも開発可能
Cordovaとは?
?
ストリート名
Cordova通りの場所
Nitobi
Cordovaの歴史
 NitobiがPhoneGapをつくる
 AdobeがNitobiを買収
 PhoneGapはAdobeの商標に
 Apache FoundationにPhoneGapソースコードを移管
 旧Nitobiチームは、ゆかりのある名前をつけたかった
 「Cordova」に決定
CordovaとPhoneGapの違い
結論
同じ
(APIレベルでは)
細かい違い① コマンド
コマンド
コマンド
phonegapコマンドはcordovaコマンドを使用
細かい違い① コマンド
コマンド サブコマンド cordova Phonegap 説明
create ○ ○ プロジェクトを作成する
serve ○ ○
ローカルWebサーバーで起動(Developer App等で使
用)
build ○ ○ ビルド
install ○ デバイスへのインストール
run ○ ○ デバイス上で実行
plugin ○ ○ プラグインの追加/削除/検索
prepare ○ ビルドイメージを作成
compile ○ コンパイルを実施
emulate ○ エミュレータ上で実行(run --emulatorと同じ)
remote
login/logout/build/install/
run
○ PhoneGap Build用コマンド
local build/install/run/plugin ○ ローカル開発用コマンド
細かい違い②config.xml
cordovaのデフォルトのconfig.xml
細かい違い②config.xml
phonegapのデフォルトのconfig.xml
その他の違い
 使用できるバージョンが異なる
 Cordova = 3.5
 PhoneGap Build = 3.4
 ネイティブコードの記述できる範囲が異なる
 Cordova = 自由にネイティブ側に手を入れられる
 PhoneGap Build = PhoneGapプラグインのみ
 PhoneGapには追加機能が
 PhoneGap Enterprise
 PhoneGap Developer App等
Cordovaと、その一味
PhoneGap
Monaca
Ionic Framework
MS Visual Studio
Google Chrome
Apps Mobile
IBM Worklight
全部、同じものがつくれる。
モバイルWebとの違い
モバイルブラウザー Cordova
ブラウザエンジン
iOS:
SafariかUIWebView
Android:
WebView、Chrome等
iOS:
UIWebView (Nitro非対応)
Android:
WebView
HTML5、CSS、JSの対応度 同じ
JavaScript APIの拡張 × ○
Same-Origin Policy CORSヘッダー
適用されない
Access Originで制御
モバイルWebとの違い
結論
同じ
(APIレベルでは)
よって
Webアプリ≒ハイブリッドアプリ
HTML5アプリ
と
ネイティブアプリ
の違い
ネイティブアプリとの比較
作り方から動作の仕組みまで、全く異なる世界。
HTML5アプリの抱える課題
 ユーザーインターフェース
 ネイティブアプリのようなスムーズなUIの実現
 実行パフォーマンス
 ストレスのない画面描画
 セキュリティ
 HTMLやJavaScriptコードの漏洩を防止
 デバイスAPI / ネイティブ機能
 iOSやAndroidの全APIをHTML5から呼び出す
最近の動向
 新しいブラウザーエンジンの登場
 ChromiumベースのWebView互換エンジン
 iOS 8で登場するWKWebView
 モダンなUIフレームワークの登場
 AngularJSベース:Ionic Framework、Onsen UI
 CSS3への最適化:famo.us
 Cordova Plugin Registryの充実
Android WebView
 Intel Crosswalk Project
 Chrominiumベースのブラウザーエンジン。
 TizenとAndroidに対応。
 Ludei WebView+ (Cocoon JS)
 WebGLを有効にしたブラウザーエンジン。
 3Dゲーム等に活用できる。
 Amazon Silk
 Kindle Fire向けのブラウザーエンジン。
 現状はAmazon HTML5/Web Apps Storeのみで有効。
WebView内包アプリの利点
 Androidデバイスにおける差異を吸収
 Android 4.0以上であれば同じHTML5/CSS3/JS機能
 デバッグのしやすさ
 Chrome Dev Toolsを使ったUSBデバッグが有効に
 端末依存が少ない(画面サイズのみ)
 パフォーマンスの向上
 最新のBlinkエンジンを利用できる
 デメリット
 ファイルサイズが大きく(8MB~15MB)
 起動時間が長い
iOS 8のWKWebView
iOS 8
WKWebView
iOS 8
UIWebView
iOS 7
UIWebView
WebGL 3D Graphics ✓ ✓
IndexedDB ✓
HTML5 Coverage
Score
440/555 427/555 410/555
SunSpider
Benchmark
949.8ms 4249.6ms 3659.5ms
CSS Shapes ✓ ✓
モダンなJS UI Framework
 Ionic Framework (http://ionicframework.com)
 AngularJSベースのUIフレームワーク。
 Onsen UI (http://onsenui.io)
 日本製。タブレットとAndroid 2.3にも対応。
 Famo.us (http://famo.us)
 CSS3を用いて高速な描画を行うJSフレームワーク。
Cordova Plugin Registry
http://plugins.cordova.io/
 Cordova 3.4からコアとプラグインを分離
 これまでのAPIは全てプラグイン形式で配布
 npmのプラグイン版
 cordova pluginコマンドでインストール
 ユーザーがプラグインを投稿することも可能
時間があればMonacaのデモ
たぶん無くなる
ありがとうございました
P.S. 是非MONACAも使ってみてください。

More Related Content

What's hot

Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発
Kenichi Inoue
 
事例で解説するハイブリッドアプリ開発のポイント
事例で解説するハイブリッドアプリ開発のポイント 事例で解説するハイブリッドアプリ開発のポイント
事例で解説するハイブリッドアプリ開発のポイント
Monaca
 

What's hot (20)

~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
 
Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発
 
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
 
Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
Monacaでつくるハイブリッドアプリ
 
Cordovaの特徴と開発手法概要
Cordovaの特徴と開発手法概要Cordovaの特徴と開発手法概要
Cordovaの特徴と開発手法概要
 
ハイブリッドアプリ開発最前線から見たHtml5の理想と現実
ハイブリッドアプリ開発最前線から見たHtml5の理想と現実ハイブリッドアプリ開発最前線から見たHtml5の理想と現実
ハイブリッドアプリ開発最前線から見たHtml5の理想と現実
 
モバイルアプリ開発の現状
モバイルアプリ開発の現状モバイルアプリ開発の現状
モバイルアプリ開発の現状
 
事例で解説するハイブリッドアプリ開発のポイント
事例で解説するハイブリッドアプリ開発のポイント 事例で解説するハイブリッドアプリ開発のポイント
事例で解説するハイブリッドアプリ開発のポイント
 
Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線
 
Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介
 
モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線
 
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみたCordova を使って本気で商用ハイブリッドアプリ開発をやってみた
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
 
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについてネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
 
Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
 
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発で拓くビジネスチャンスHTML5ハイブリッドアプリ開発で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
 
Monacaエンタープライズのご紹介
Monacaエンタープライズのご紹介Monacaエンタープライズのご紹介
Monacaエンタープライズのご紹介
 
Onsen UIが目指すもの
Onsen UIが目指すものOnsen UIが目指すもの
Onsen UIが目指すもの
 
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
 
Gartner summit 2016
Gartner summit 2016Gartner summit 2016
Gartner summit 2016
 

Similar to 120分聞けばドヤ顔で語れる apache cordova スーパー勉強会

ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演
Monaca
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー
Monaca
 
20140711 evf2014 hadoop_recommendmachinelearning
20140711 evf2014 hadoop_recommendmachinelearning20140711 evf2014 hadoop_recommendmachinelearning
20140711 evf2014 hadoop_recommendmachinelearning
Takumi Yoshida
 

Similar to 120分聞けばドヤ顔で語れる apache cordova スーパー勉強会 (20)

【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリ【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリ
 
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
 
企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点
 
Spark at Scale
Spark at ScaleSpark at Scale
Spark at Scale
 
Capacitor
CapacitorCapacitor
Capacitor
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova
 
ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー
 
20140711 evf2014 hadoop_recommendmachinelearning
20140711 evf2014 hadoop_recommendmachinelearning20140711 evf2014 hadoop_recommendmachinelearning
20140711 evf2014 hadoop_recommendmachinelearning
 
Apache Hiveの今とこれから - 2016
Apache Hiveの今とこれから - 2016Apache Hiveの今とこれから - 2016
Apache Hiveの今とこれから - 2016
 
20110824 android apps_tanaka
20110824 android apps_tanaka20110824 android apps_tanaka
20110824 android apps_tanaka
 
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのことエンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
 
PhoneGapの始め方
PhoneGapの始め方PhoneGapの始め方
PhoneGapの始め方
 
smartFXにおけるApache Cordovaの活用について
smartFXにおけるApache Cordovaの活用についてsmartFXにおけるApache Cordovaの活用について
smartFXにおけるApache Cordovaの活用について
 
はじめてのiOSアプリ開発 Swift対応版
はじめてのiOSアプリ開発 Swift対応版はじめてのiOSアプリ開発 Swift対応版
はじめてのiOSアプリ開発 Swift対応版
 
クロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonacaクロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonaca
 
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
 
Web標準技術で iOS、Android両対応アプリを開発
Web標準技術でiOS、Android両対応アプリを開発Web標準技術でiOS、Android両対応アプリを開発
Web標準技術で iOS、Android両対応アプリを開発
 
DeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみたDeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみた
 
業務アプリを安全に効率的に開発・運用するためのポイント
業務アプリを安全に効率的に開発・運用するためのポイント業務アプリを安全に効率的に開発・運用するためのポイント
業務アプリを安全に効率的に開発・運用するためのポイント
 

More from Monaca

New things about Cordova 4.0
New things about Cordova 4.0New things about Cordova 4.0
New things about Cordova 4.0
Monaca
 
LODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリLODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリ
Monaca
 
第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料
Monaca
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座
Monaca
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
Monaca
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
Monaca
 
開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント
Monaca
 

More from Monaca (20)

展示会出展を成功させるたった一つのこと
展示会出展を成功させるたった一つのこと展示会出展を成功させるたった一つのこと
展示会出展を成功させるたった一つのこと
 
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
 
LT「料金プラン改定後のMonacaについて」
LT「料金プラン改定後のMonacaについて」LT「料金プラン改定後のMonacaについて」
LT「料金プラン改定後のMonacaについて」
 
クロスプラットフォーム活用のポイント
クロスプラットフォーム活用のポイントクロスプラットフォーム活用のポイント
クロスプラットフォーム活用のポイント
 
US Meetup Tour
US Meetup TourUS Meetup Tour
US Meetup Tour
 
New things about Cordova 4.0
New things about Cordova 4.0New things about Cordova 4.0
New things about Cordova 4.0
 
Cordova and PhoneGap Insights
Cordova and PhoneGap InsightsCordova and PhoneGap Insights
Cordova and PhoneGap Insights
 
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile appsUsing PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
 
How to make Twitter app with PhoneGap/Cordova
How to make Twitter app with PhoneGap/CordovaHow to make Twitter app with PhoneGap/Cordova
How to make Twitter app with PhoneGap/Cordova
 
高いUXをハイブリッド開発で実現するためのポイント
高いUXをハイブリッド開発で実現するためのポイント高いUXをハイブリッド開発で実現するためのポイント
高いUXをハイブリッド開発で実現するためのポイント
 
LODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリLODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリ
 
第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料
 
Android Bazaar Conference講演資料「Onsen UIデビュー!」
Android Bazaar Conference講演資料「Onsen UIデビュー!」Android Bazaar Conference講演資料「Onsen UIデビュー!」
Android Bazaar Conference講演資料「Onsen UIデビュー!」
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料
 
Html5超入門
Html5超入門Html5超入門
Html5超入門
 
開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント
 

120分聞けばドヤ顔で語れる apache cordova スーパー勉強会