デブサミ2010「次世代Web標準 HTML5 最新動向」行ってきた

デブサミに夕方から行ってきた。気になった部分だけ抜き書きメモ。

  • HTML5の背景
    • webアプリケーションの台頭
      • HTML/CSS/JavaScriptの組み合わせでは機能が足りなかった
      • XHTML 2.0とかXFormsとか考えられたけど
      • XMLベースの技術、開発者に支持されなかった
      • ブラウザ含めて不安定な技術だった
    • 何とかしようと考えられたのがHTML5
      • 機能拡張
      • 安定性の向上
  • Canvas
    • immediate mode
      • 描画したものを操作できない
  • audio要素、video要素
  • Web Storage
    • localStorage
    • sessionStorage
  • Web Worker
    • Shared-nothing
    • DOMとかにアクセスできない
  • Web Cache
    • CACHE MANIFEST とか書く
  • online/offlineイベント
  • 相互運用性の問題
    • そもそも仕様がなかった件
      • 実装に依存しないように作られた
    • 標準化されないままだった
  • DOM中心の仕様構成
  • 勧告はまだ先になりそう
    • 実装は進んでいる
    • 一度には進まない
  • Web Workers
    • バックグラウンド処理を可能にすることでユーザビリティの向上へ
    • 並列処理でマルチCPUを生かせる
  • JavaScriptプログラムのレイヤー化が進むのでは?
    • UI層: DOMとかjQueryで扱えるものとか
    • BL層: Business Logic層、HTTP通信(Ajaxが担っていた部分)とか
    • UI層とBL層の間をやり取りするWeb Messaging、とか
      • Web Messaging、任意のJavaScriptオブジェクトをやり取りする
      • 設計が面倒、実装も面倒
    • フレームワーク作った
    • Workerに処理を投げられるということは、その間に他の操作ができるということ。
  • ライブラリ
  • video要素の動画のキャプチャーをcanvasに取れる
    • CanvasのdrawImageメソッドでできる
  • Web Workersを使うことでブロッキングしないものを
    • Sketchpad http://mugtug.com/sketchpad/
      • canvas要素を重ねることで状態を表現している
      • 状態を保存、コピーしておくcanvas要素を複数持つことで履歴表示を可能にしている
  • テキストマイニングにWeb Sorcket向いてるかも
    • パイプラインでリクエスト処理できる
      • HTTPみたいにリクエスト/レスポンスを待たない
  • Files API
    • multiple属性を使うと複数選択できたりする