Top Banner
51

Future with Firefox OS

Nov 01, 2014

Download

Technology

dynamis .

Firefox OS説明会@モバイルソリューション研究会で使用したスライド
http://www.csaj.jp/seminar/2014/0826_seminar.html
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Future with Firefox OS
Page 3: Future with Firefox OS
Page 4: Future with Firefox OS
Page 5: Future with Firefox OS
Page 6: Future with Firefox OS

OPEN FIRE FIREWEB

Page 7: Future with Firefox OS
Page 8: Future with Firefox OS
Page 9: Future with Firefox OS
Page 10: Future with Firefox OS
Page 11: Future with Firefox OS
Page 12: Future with Firefox OS
Page 13: Future with Firefox OS
Page 14: Future with Firefox OS
Page 15: Future with Firefox OS

!

!

!

!

!

!

!

Page 16: Future with Firefox OS

Internet

Kernel & HAL Kernel & HAL

Web Platform

GeckoDevice API System API

Packaged App(Local File)

Hosted App(Web Site)

App Framework

LibrariesBlink SGL etc...

AndroidRuntime

Native Interface

Dalvik VM

Java App

Native Library

Chrome (Browser App)

InternetWebView Contents

Page 17: Future with Firefox OS
Page 18: Future with Firefox OS
Page 19: Future with Firefox OS

Internet

サーバ

端末

local

Page 20: Future with Firefox OS
Page 21: Future with Firefox OS

{   "name": "フォクすけアプリ",

  "description": "あのフォクすけが遂にアプリに!",   "launch_path": "/index.html",   "icons": {     "128": "/icons/foxkeh-128.png"   },   "developer": {     "name": "dynamis",     "url": "http://dynamis.jp/"   } } // 注意: ローカルで / -> /index.html 変換はない

Page 22: Future with Firefox OS
Page 23: Future with Firefox OS
Page 24: Future with Firefox OS

!

!

Page 25: Future with Firefox OS
Page 26: Future with Firefox OS
Page 27: Future with Firefox OS
Page 28: Future with Firefox OS

Semantic Elements

Multi Media

HTML5 Forms

Offline SupportHTML5HTML5

Parser

Mouse, Key ev.

XHTML5WAI- ARIA

W3C

Page 29: Future with Firefox OS

Semantic Elements

Multi Media

Canvas

HTML5 Forms

Offline Support

Micro- Data

Server- Sent ev.

Web Sockets

Web Storage

HTML5HTML5 Parser

Mouse, Key ev.

XHTML5

Web Workers

Web Messag-

ing

WAI- ARIA

W3C

WHATWG

HTML

Page 30: Future with Firefox OS

Semantic Elements

Multi Media

Canvas

HTML5 Forms

Offline Support

Micro- Data

Server- Sent ev.

Web Sockets

Web Storage

Layout

Media Queries

HTML5

CSS3~Trans form

Anim ation

Regions

Filters

HTML5 Parser

Mouse, Key ev.

XHTML5

Web Workers

Web Messag-

ing

WAI- ARIA

W3C

WHATWG

HTML

Page 31: Future with Firefox OS

Semantic Elements

Multi Media

Canvas

HTML5 Forms

Offline Support

Micro- Data

WebGL

Indexed DB

SVG

Server- Sent ev.

Web Sockets

Web Sockets

Geo- location

FileAPI

Web Storage

XHR2

Math ML

Layout

Media Queries

HTML5

CSS3~Trans form

Anim ation

Regions

Filters

HTML5 Parser

Mouse, Key ev.

ECMA Script

CSP

SPDY

XHTML5

Orien- tation

Web Workers

Web Messag-

ing

DOM4

SMIL Vibra- tion

XPathRSS

OGP

WAI- ARIA

W3C

WHATWG

other

Khronos

ECMA

IETF

WOFF

HTML

DNT

Page 32: Future with Firefox OS

Semantic Elements

Multi Media

Canvas

HTML5 Forms

Offline Support

Webm

H.264

Micro- Data

WebGL

Web SQL

Indexed DB

SVG

Server- Sent ev.

Web Sockets

Web Sockets

Geo- location

FileAPI

Web Storage

XHR2

Math ML

Web Audio

Layout

Media Queries

HTML5

CSS3~Trans form

Anim ation

Regions

Filters

HTML5 Parser

Mouse, Key ev.

Opus

ECMA Script ECMA

6th

USB

CSP

SPDY

WebCL

Web RTC

Net Info

MP3

Device Storage

TCP Socket

NFC

File Sys

Notifi- cation

XHTML5

Orien- tation

Web Workers

Web Messag-

ing

DOM4

SMIL Vibra- tion

Proxi- mity

XPathRSS

RDF

OGP

Schema .org

WAI- ARIA

W3C

WHATWG

other

Khronos

ECMA

IETF

WOFF

Battery Status

Radio

Tel

HTML

DNT

Flex Box

Page 33: Future with Firefox OS

出版業界が必要としてきた機能も順次実装&標準化 任意領域への流し込み、多段レイアウト等も CSS で

デジタル出版プラットフォーム

http://adobe-webplatform.github.io/Demo-for-Alice-s-Adventures-in-Wonderland/

Page 34: Future with Firefox OS

Unreal Engine 4 (Epic Soul)

最新ゲームエンジンも速やかに Firefox に対応 ネイティブゲームも最初のタイトルが出たばかり

http://www.mozilla.jp/blog/entry/10388/

Page 35: Future with Firefox OS

Unreal Engine 4 (Epic Soul)

最新ゲームエンジンも速やかに Firefox に対応 ネイティブゲームも最初のタイトルが出たばかり

http://www.mozilla.jp/blog/entry/10388/

Page 36: Future with Firefox OS

Unreal Engine 4 (Epic Soul)

最新ゲームエンジンも速やかに Firefox に対応 ネイティブゲームも最初のタイトルが出たばかり

http://www.mozilla.jp/blog/entry/10388/

Page 37: Future with Firefox OS

Unreal Engine 4 (Epic Soul)

最新ゲームエンジンも速やかに Firefox に対応 ネイティブゲームも最初のタイトルが出たばかり

http://www.mozilla.jp/blog/entry/10388/

Page 38: Future with Firefox OS

f

Firefox や Chrome では Web アプリを 独立したアプリとしてインストール可能

Chrome Apps

Firefox Apps

Page 39: Future with Firefox OS
Page 40: Future with Firefox OS

Serial

UDB Diagram Socket

Print

USB WebCL WebGL2

Page 41: Future with Firefox OS

DeviceIndexedDB

USB File Reading

WebSocket Over Apps

Page 42: Future with Firefox OS

大規模アプリは遅かった

大規模アプリの処理速度では C 言語が圧倒的に速い (小規模アプリや一部ベンチ限定で以前から高速)

2013/03 - http://kripken.github.io/mloc_emscripten_talk/#/19

Page 43: Future with Firefox OS

C 言語に追いついてきた!

殆どの処理で C 言語 (clang) の 1.5 倍以内の時間 C (clang) < JavaScript (asm.js) < C (gcc) の場合も

2013/12 - https://hacks.mozilla.org/2013/12/gap-between-asm-js-and-native-performance-gets-even-narrower-with-float32-optimizations/

C 言語 (clang) 基準の実行時間

高速

Page 44: Future with Firefox OS

既存 JavaScript エンジンで動作 高度に最適化可能なパターン

経験的に JIT する必要が無い形式

Page 45: Future with Firefox OS

型の明示 (Annotation) も既存 JavaScript の範囲内で行う

ガーベジコレクションを回避

C 言語などから変換する対象

Page 46: Future with Firefox OS

CrankShaft や IonMonkey の SSA 最適化 JIT の効果を確実かつオーバーヘッドなく使えるように

暗黙知 (ダーティハック) にお別れ

予測不能な JIT/GC を回避

Page 47: Future with Firefox OS
Page 48: Future with Firefox OS
Page 49: Future with Firefox OS
Page 50: Future with Firefox OS
Page 51: Future with Firefox OS