第35回HTML5とか勉強会に行ってきた感想です。
勉強会自体のメモは第35回HTML5とか勉強会の参加メモにまとめていますので、そちらをご参照下さい。
以下、人づてに聞いた話とTLで見た話と個人的意見がごっちゃになったカオスな文章です。
Firefox OSが目指しているのは「いわゆるWeb的な思想」、WHATWG(W3CよりWHATWGだと思う)の理念や方向に近いと思います。ブラウザ間で差異が出ないように=ベンダロックインしないように、そしてそれを保証しつつネイティブアプリだけにしかできなかったことをWebでできるように拡大するという「ブラウザベンダ」寄りのアプローチです。
mozillaはブラウザベンダ寄りっつか、ブラウザベンダそのものですが。
電話周りとか速度面でクリティカルなところはどういう風にやってるのかなー、APIは開放しているけどさすがにデバイス叩くところはネイティブかなー。と思っていたら、Firefox OSのベースはAndroidのICSだそうで(by TwitterのTL)。
つまりAndroid(のベースのLinuxカーネルとかその上の何か)をWeb APIでラップしたようなイメージですか。
速度面については、浅井さん曰く「JavaScriptや描画のエンジン自体も高速化し続けている」ので、ネイティブとイコールになることはないにしても「使い物にならないぐらい遅い」ってことにはならなそうな。というかならないことを期待するというか。
浅井さんの話だったか他で見た話だったか、あるいはTizenの話だったか忘れましたが、「そもそも速度面では勝負していない」論もあります。つまり、カリカリチューニングするところはネイティブでやればよくて、でもそれは表に出てくる必要はない=アプリの開発者が意識する必要はなくて、アプリの開発者からはそこそこ早いプラットフォームとわかりやすいAPIが提供されている方が幸せですよね、だからFirefox OSはそれを提供します、みたいな。
アプリの「作りやすさ」は人に依りけりでしょうが、HTML屋さん的にとっつきやすいのはWeb APIのほうでしょうね。JavaやObjective-Cを覚えなくても作れますし。
程度は違いますが、AndroidのAPIもネイティブをラップするガワです。
Androidだとネイティブ(1層目)の上にDalvik VM(2層目)がいて、ここで動くのがいわゆるネイティブアプリ。
で、Dalvik VMの上で動くWebViewの更に上で動くのがWebアプリとかHTMLアプリ(3層目)。
Firefox OSの場合はDalvik VMの層がなくてネイティブの直上でHTMLアプリが動くので、同等のHTMLアプリをAndroidとFirefox OSで作ったらFirefox OSの方が早くなる(はず)と。
あとAndroidのWebView上では「広義のHTML5=狭義のHTML5+CSS3+JavaScript」のサポート範囲が狭かったりクリティカルなAPIが少なかったり使えなかったりするので、HTML5の世界に限ればFirefox OSのほうが多機能のアプリを作れると。(もちろんAndroidでもAndroid APIを叩けば同機能を実現できますが)
Tizenははeb APIでも作れる(Nativeでも作れる)ということでFirefox OSに近いところがあります。
APIの充実度的にはTizenもFirefox OSもそれほど変わらないような印象です。
つまり今のWebアプリに比べてできることが充実していて、但しどちらも今のところ「標準化」されていない独自のAPIで実現している部分がある感じ。
個人的には、Nativeをアプリ開発者へ開放せずWebに特化したFirefox OSの方が尖っていて好きです。
iOSやAndroidの○番煎じでなく、まったく違ったコンセプトの方が面白そうですよね。(ベースはICSですけど)
コメントを残す