HTML5 3Days TechTalkに参加しました
html5-developers-jpの主催で行われたHTML5 3Days TechTalkに参加してきました。
グループ: html5j.org | Google グループ
HTML5で作るオフラインアプリケーション
- オフラインでも利用出来るアプリケーション
- Gearsを使用して開発されたアプリは数少ない
- あまり普及していない理由
- ブラウザプラグイン
- ニーズが顕在化していなかった
- しかし、以下のような理由で普及が進む可能性
- ニーズが見えない→モバイル端末でのネット利用の普及
- ブラウザプラグイン→ブラウザ自身でのサポート
- 標準化による普及
- アプリケーションキャッシュ
- Web Database
- Web Workers
- 変数の共有が出来ない
- DOMに触る事が出来ない(document, windowに触る事が出来ない)
- Worker間のデータ共有
- メッセージの送受信でデータのやりとりを行う
- 現在のデバッガではWorkerの処理はデバッガで追えない
- ログを表示したいだけなので、UI WorkerにメッセージをPOSTしないといけない
- 「fakeworker.js」ライブラリを作った。WorkerのAPIを実装
- 問題点
- Alexing Framework
- サーバ側でデータの衝突の検知機構について
- 衝突を起こした際の処理はアプリケーションによって異なるため、Frameworkとして責任を持つのはデータの衝突が起こった際にその事をクライアントに返す事
Canvasチュートリアル
- Canvasは個々のピクセルを扱う描画が得意
- IE以外は対応
- ExplorerCanvasを使用すればIEでも使用可能(VMLを使用してエミュレート)
- 描かれたテキストはビットマップとして組み込まれる
- マイター限界比率
- 線の半分の流さ * miterLimitで表される、マイターの限界
- 変換マトリックス
- ピクセル操作の注意点
- imagedataオブジェクトを手作りしない
- createImageData()やgetImageData()を使う
- OperaはcreateImageData()未実装
- RGBの値を指定する時はparseIntを使用する
- 文字列を渡すとFxではエラーになる
- imagedataオブジェクトを手作りしない
- Q&A
- Image Bufferは可能か?
- その様な機能はないが、工夫次第で実装可能
- Double Bufferingは可能か?
- Canvas自身に機能は無いが、経験的では、よほど重い処理をしない限りちらつかない。これはブラウザで何かしらの処理を実装しているのかもしれない
- Image Bufferは可能か?
今回のTech TalkはGoogleのオフィスで開催されました。
Google自販機や、キッチンみたいなスペースがある環境でGoogleらしい感じでした。
一緒に参加したid:Slightairのエントリ: HTML5 3days Tech Talk に参加してきた - にっき