HTML5が普及してもFlashやFlexは なくならない

HTML5Flashの強力なライバルとして、HTML5が出たらFlashは なくなるのではないかという論調になっています。
でも、よく考えればHTML5FlashFlexはレイヤーが違います。以降、Flexも構造は同じなので、Flashにまとめて書きます。


Flashはツールが充実している」と言う話でHTML5よりFlashが優位ということをいう人がいますが、HTML5のためのツールもすぐに出てくるはずです。
おそらくHTML5を最もうまく使いこなすためのツールも、Adobe製品になるはずです。そして、そのツールの名前がFlashである可能性は非常に高いと思います。
つまり、Flashのツールで、Flashプレイヤー用のファイルを吐き出すかわりに、HTML5を吐き出すことを選択できるようになるのではないかと思うのです。


AdobeFlashプレイヤーでお金を取っているのではなく、Flashのツールでお金を取っているわけで、そしてHTML5はすでに市場にあるわけで、それだったら「HTML5用ツールもAdobe」というメッセージを出し、Flashの操作系でHTML5にも対応できる、としたほうが商売上のメリットは多そう。
ようするに、Flashプレイヤーは なくなるかもしれないけど、Flashはなくならない、ということです。

Flashプレイヤーはどのように消えるか

Flashプレイヤーは消えていきます。これはもう間違いない。
問題は、どのように消えるかです。
ひとことでいうと「IE6と同時に消える」だと思います。


現状で、HTML5の機能を使わないとしても、HTML+JavaScriptでかなりのことができます。
たとえば、ぼくは、アウトラインプロセッサのようなものを試しに作っています。
http://kistools.appspot.com/outlinetool.html
これは、IE6でも動くはずですが、使うには厳しい重さだと思います。
商売でやるとして、IE6でストレスなく動かしてもらうには、JavaScriptが重すぎて話になりません。アニメーションしようとするとかなり重いです。IE6に対応するための解決策として、Flashプレイヤーは必要です。


では、IE6がなくなったとしたら。すべてのブラウザがHTML5対応になったとしたら。


YouTubeHTML5対応でFlashプレイヤーがなくても見れるようになると思います。そして、YouTubeFlashプレイヤーなしで見れればFlashプレイヤーをインストールしない人も増えそうです。
日本だと、それに加えてニコ動がFlashプレイヤーなしで見れれば、Flashをインストールしない人も増えそうです。あとはサンシャイン牧場くらい。


そして、今、みかけるFlashの多くは広告です。それがどうなるか。
広告を提供する側にとって、多くの人に見てもらえることは重要です。ほぼすべてのブラウザがHTML5に対応したとしたら、そしてFlashプレイヤーのインストール率が下がってきたとしたら、広告主はより多くの人、より多くのデバイスで見ることができるHTML5で広告を表示することを選ぶと思います。
広告を見るためにFlashプレイヤーをインストールする人はいません。


広告スペースを提供する側にとって、Flashのようなサンドボックスがあって本体の記事に影響を与えないということは大切です。
HTML5+JavaScriptでは、本体の記事に影響を与えない保証が難しくなります。
そこで、こういうのはどうでしょう?
広告の入校は、Flashのswfファイルなどで行ってもらいます。そして、swfをHTML5+JavaScriptに変換して表示するのです。
flv→HTML5というツールは、技術的に可能で、そして今後5年くらいすると需要も増していくと考えられるので、かならず出てきます。そこで決められた枠の外に影響を与えないことを保証する仕組みがあれば、問題ありません。


ここで、気づくのは、広告作成者がやることはほとんど変わらないということです。Flashというツールで広告を作って、普通に保存する。場合によっては、HTML5形式で保存する。
広告スペースを与える側も、flashタグが何か特定idを指定したdivタグになるくらいです。swfをhtml5に変換する作業は必要ですが、それもサーバーに仕込めば手間は増えません。
広告を見る側は「最近、Flashをインストールしろっていうのを見ないねー」くらいじゃないでしょうか。


Adobeにとっても、Flashプレイヤーでお金を取っているわけではないので、Flashプレイヤーの開発コストがなくなるのはいいことです。組み込みは知りませんが。
組み込みでも、あまり積極的にはFlash対応されなくなると思うので、そこで収入を得ていたならそれはなくなってしまいますね。


ということで、HTML5ブラウザが普及したときに、Flashプレイヤーがなくなって困る人があまり思い浮かばないのですが、どうでしょう?

FlexはGWTに侵食される

HTML5のせいでFlexがなくなることはないと思いますが、Flexの場合は別の方面から侵食されます。
それはGWTです。
GWTJavaJavaScriptに変換するツールで、ようするにJavaHTML5アプリケーションが書けるようになります。前のエントリで出したhttp://kistools.appspot.com/outlinetool.htmlも、ソースはJavaで書いて、JavaScriptに変換されて動いています。


Flexでは、サーバー側をJavaで書くことも多いと思うのですが、その場合、クライアント側をJava以外で書くよりも、Javaで書いたほうがはるかに楽です。
特に、人を集めて開発を行う場合、サーバー側のJava担当の人に、クライアント側のJavaをいじってもらうということが可能なので、自由度があがります。
Javaがわかる技術者をn人とFlexがわかる技術者m人」を集めるよりも「Javaがわかる技術者をn+m人」集めるほうが楽です。
また、サーバーとクライアントで人をわけるのではなく、機能ごとに人をわけるということもやりやすくなります。


いまは、GWT用のツールは少ないですが、普通にJavaコードを書けばいいので、コードを書く分には普通にJavaIDEが使えます。
GWT2.0からは画面レイアウトが別ファイルにできるようになるので、画面デザイナも出てくると思います。
そうすると、今までFlexを選んでいた人が、GWTを選ぶようになることも増えると思います。

HTMLの中にも、JavaScriptじゃなくActionScriptを書くようになるかも

JavaScriptユーザーインターフェースを作ろうとすると、型がないことで非常に不便に思います。なので、GWTJavaが使えるのがありがたいのです。
型を指定したい。


ところで、AdobeFlashHTML5+JSコンバータを作るということは、ActionScriptからJavaScriptへのコンパイラを作るということでもあります。
そうすると、DramweaverでHTML中にJavaScriptの代わりにActionScriptを書くと、実行用にJavaScriptに変換されたファイルが生成されるようになるかもしれません。
恐らく、そのほうが楽にユーザーインターフェースのプログラムを組めると思います。