第29回 HTML5とか勉強会 メモとか思ったこととか
アジェンダ
- ngCore on HTML5
- PhoneGap
- Titanium Mobile
- 座談会
ngCore on HTML5
紀平 拓男さん ソフトウェアソリューション部所属
FlashPlayer ExGameなどを制作
ngCoreとは?
- javascriptのゲームフレームワーク
- ゲーム&ソーシャルに特化したAPI
- ngGOライブラリ
- ngBuilder
1ソースでiOS&android対応
個人で無料で使用可能
実例
忍者ロワイヤル
アクアコレクション
牧場ホッコリーナ
海外多数
仕組み
Game Core(JS) → JSEngine → ngCore Engine → iOS/Android
ngCoreの特徴
開発言語がjavascriptである
javascriptだと何が嬉しいのか
高速なスクリプト実行エンジン
V8,JSCore
豊富なツール群
JSLint、etc...
ブラウザでそのまま実行できる
そのままゲームアプリをインストールすること無く動作させることが出来る。
インストール無く起動可能
起動時間の短縮
特定シーンをURLで共有可能
気に入ればそのまま始めてもらえる。
HTML5化のメリット
リアルタイム更新
バグがすぐ直せないとか
クリスマス終了後のクリスマスイベント・・・
などの悲しい事態が起きにくい。
新しいプラットフォームの対応
windows phone, PS Vita, etc...
既存資産の移行可能
アプリとWeb, どちらが流行っても即時対応可能
言いたいこと
フレームワークはjavascriptであるべき
個人的な感想
基本的に1ソースで対応、というのは後である座談会でも話題になってたけど厳しそう。(Androidのフラグメント問題が解決しない限りは)
ただデフォルトでゲームとソーシャル系のAPIが導入できるのは確かに便利。
一度使ってみる。
PhoneGap
タチゾノマサヒコさん
組み込みソフトウェア・エンジニア
ngCoreを中心に開発もしてた
現ウェブエディア
ウェブアプリかネイティブアプリか?
AppStore, GooglePlayが焦点
ウェブアプリの良い所
色んなプラットフォームに対応しやすい
アップデートが簡単
HTML/CSS/JavaScriptなど、ウェブ技術が使える
ウェブアプリの弱いところ
AppStoreなどが使えない。
課金などは精神的障害が大きい
カメラ、傾きセンサーなど端末の機能が使えない
ネイティブアプリの良いところ
パフォーマンスが高い
端末機能をフルに使える
AppStoreが使える
ネイティブアプリの弱いところ
開発が大変
プラットフォームごとに開発が必要
Storeの審査があるためアップデートしにくい
まとめ
アプリ形式でないと色々厳しい
が、ネイティブ開発は単一プラットフォームでも大変だし。。。
ハイブリットという選択
ネイティブアプリ上でWebViewからHTML/JSを読み込み動作させる
AppStoreで配布可能
そこでPhoneGap
WebViewをベースにWebアプリをラップ
JSからネイティブAPIへのブリッジを提供
多彩なプラットフォーム
対応APIも多彩
UIウィジェットは無い
対応してないAPIもある
→プラグインで対応できるかも
PhoneGap Build
PhoneGapをWeb上でコンパイル
Githubからインポートできる
BlackBerryとかWindowPhoneにも対応してる
DreamWeaver CS6連携と連携してそのまま書き出せる!
まとめ
PhoneGapはHTML5ベース
UIは提供しないから自分で作る
サポートプラットフォームは多い
ウェブサイトをベースにアプリにも展開するような用途に向くかも
個人的な感想
一番導入しやすいと思う。
重い動作とかするアプリとかを作る、というよりは既に有るWebアプリなんかや
そもそもアプリでないものをAppStoreなどにも展開したい場合なんかにリーチしてるっぽい。
性質上、ほとんどがWebアプリをラップすることになるため、実効速度はほぼ問題になら無い(と言われてた)ことを考えるといい方向だと思う。
Titanium Mobile
Yuichiro MASUIさん(@masuidrive)
Appeceletor, Inc
ネイティブアプリはOSによって環境が違う!
ObjectiveCだとかJavaだとか.Netとか
でもできないことも多い・・・(端末の機能とか)
かと言ってObjectCはきつい
→ JavaScriptを使ってつくるTitanium Mobile
HTMLは使わない
JSで出力させる
HTML5 vs Titaniumは間違い
混在させることも可能 (あとでやりやすいかどうか検討してみたい)
実用に堪えるのか
30万の開発者、4万近いアプリがマーケット(アプリストアにあるものだけで
例
サイボウズLive
積ん読本
同じソースでもOSによって表示が異なったりする
なるべくデフォルトのUIを使って実行するため、慣れた表示になる
それぞれのOSによってかき分けがしやすい設計になってる
何ができないの?
画像操作が得意ではない
写真の操作とかも不得意 → そもそも画像操作のAPIが殆ど無い
高いリアルタイム性の強いアプリとかは弱い
逃げ道
Module → 組み込み系の言語などを使ってアプリを作れる
サーバ保存ToDo
個人的な感想
昔触った時からだいぶ進化してるみたいでもう一度やってみたくなった。
特にデバッガが有料じゃなくなったのは知らなかったのでまた触ってみたい。