座標計算を行うレイアウトエンジンを下敷きになっている。近年のCSSの課題が一通り解決されていて、一応この規格で今現在のレスポンシブなUIは一通り実現できる。エンジンの上に構築されている。足りないパーツを補うためのものだろう。それを生成するJS側が上位概念になる。AMPと違って自分でコンポーネントを自分で定義できるのが大きい。最高って話じゃなくて、レンダラーの性能を最大限に引き出しつつ、十分な自由度でウェブアプリケーション開発基盤を作るなら、ReactNative周辺の発想が下敷きになるだろう、ということだ。要素とその差分更新を使う。document.body.render(<View><text>Hello!</text></View>)こんなAPIとすればよい。それは全部非同期で行われるとする。副作用を最適化すれば良い。差分更新アルゴリズム自体をネイティブで記述できるので、高速化が見込まれる。課題があるとすれば、毎度巨大なステートツリーを生成する際のオーバーヘッドだろうか。みたいな定義を見たらこちらに切り替える、とか。この手法、もう一つ嬉しい点があって、実は画面遷移にJSを使わなくてもいい。同一オリジンないなら常にVDOMアルゴリズムを適用する、という仕様があれば、サーバーサイドで生成したHTMLを効率よく差分適用できる。大多数であろう、ヘッダだけ再利用して、コンテンツ書き換え、みたいなことが自然に行われる。夢があると思いませんか。ここで予想される批判は、Webは複雑化するのをやめ、ティム・バーナーズ=リーが目指したであろう、セマンティックなHTMLに回帰せよ、という主張。理解できるし気持ちはわかる。Webに要求されるインタラクションや組版やタイポグラフィの水準は、もはやそこを遥かに越えていて、アプリケーションプラットフォームとして機能しないといけない時代に来ている。少なくとも、「アプリケーションの」プラットフォームとしては、HTMLの別規格、あるいはサブセットとして、新しく生まれ変わる必要があるのではないか、というのが自分の主張である。ブラウザを出すと思っている。その際に重要視してくるのは、ネイティブアプリと遜色ない体験を、一つのブラウザ内でシームレスに遷移できることだと思う。そのための基盤がReactで、少なくともその実験はしているのは間違いない。ライセンスを変更してない。いや、元々センシティブなライブラリなので防衛的になるのもあるだろうが、単なるUIライブラリとしてはFacebookが力を入れすぎている、という感覚が昔からあった。これが新ブラウザの布石なら納得行く話ではないだろうか。書いてて思ったけど陰謀論っぽい。方向でスクリプティングが発達すれば、少なくともレンダラーはネイティブアプリと遜色なくなる今このタイミングで適切な次世代のWebの仕様を提案できれば、一発あるかもしれないなんか興がのってでかいテーマで書いてしまったが、思考実験と言うか、話半分に聞いてほしい。Googleの中の人とかに話を聞いてみたいなぁ。worker-domおもしろライブラリを見つけて興奮しているので紹介します。月別アーカイブはてなブログをはじめよう!mizchiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。