プラグイン vs HTML5 それぞれの「適材適所」


HTML5が盛り上がりを見せており、Adobe MAX 2010でも、「Flash君とHTML君」の寸劇?が繰り広げられました。そこでは、FlashやSilverlightといったプラグインベースのリッチクライアント技術は不要になるのでは?という議論があると思います。
今のところ「適材適所」という結論に落ち着くのですが、その「適材適所」とは具体的に何なのか、主観的ではありますが挙げてみました。

HTML5の仕様のフィックスや、対応ブラウザの普及はこれから、という現時点で、ベンダー主導で既に普及率で申し分無いFlash/Silverlightと比較する事がナンセンス…というご指摘もあるかと思いますが、あくまで一つの見方として参考になればと思います。また調査や知識に至らない点はご容赦ください。「HTML5」は本来Markup Languageとしての仕様でありますが、ブラウザAPI、CSS3も含めた呼称としてとらえています。

まずはFlash/Siverlightの方から。

■ Flash/Silverlightを使う10の理由

  • UIコンポーネントを利用する
  • デバイスI/Oと連携する
  • バイナリ通信やソケット通信を行う
  • イメージ処理、3Dグラフィックを行う
  • ビデオ配信を行う
  • タイポグラフィーにこだわる
  • デスクトップアプリ化する
  • ソースコードを隠蔽する必要がある
  • 古いブラウザでも稼働しなくてはいけない
  • スキルのあるFlash/Silverlightの開発スタッフがいる

解説についてはこちらから。次にHTML5です。

■HTML5を使う10の理由

  • スマートフォン向けである(特にiOSも対象)
  • 読む/見るコンテンツである
  • 既存HTML画面にアドオンする
  • HTMLを生成/編集する
  • 検索エンジンに最適化する必要がある
  • ブラウザの機能を利用する必要がある
  • 他のサービスにパースされる必要がある
  • ベンダーのコントロールから逃れる
  • 「先進性」をアピールしたい
  • スキルのあるJavaScriptの開発スタッフがいる

解説についてはこちらから。

どちらもまだまだ指摘すればいくらでもありそうですが、各々無理矢理10項目にしてみました…。見解の相違もあろうかと思います。

ここまで書いておいて当たり前のことですが、最終的にリーチすべき「エンドユーザー」にとって、有益なものになっていれば、実装技術は作り手の問題でしかありません。また「適切なユーザーインターフェス」、「素晴らしいユーザーエクスペリエンス」の手法は実装技術に依存しないと思います。これらを踏まえて、目的や課題に対して「正しい適材適所」を技術的な裏付けに基づいて選択ができるようにならなければ!と改めて思った次第です。