Google、Chrome用の新レンダリングエンジン Blink を開発。WebKit を元にアーキテクチャ刷新
WebKit のレガシーから自由になったことで導入できる改良としては、ページ内の iframe を別プロセス化して別のサンドボックスで走らせる out-of-process iframes、旧 Mac WebKit とのAPI互換性維持のため複雑化していたネットワークコードをシンプルに書きなおして高速化、さらにブラウザの各要素やレンダリングのマルチプロセス化を進めて高速化など。
Google が独自のレンダリングエンジンを開発する、と聞いてまずありそうな反応は:
1. WebKit ベースならわざわざフォークさせず、オープンソースのWebKit本流に還元しろ。
2. いまさらまた互換性テスト対象を増やす気か (せっかくOperaも陥落して WebKit ばかりになってきたのに)。
あたりがありそうです。Google では容易な決断ではなかったがそうする必要があったとして、Chromium Blog の Blink 発表記事や プロジェクトページのFAQで延々と意義を説いています。ざっとまとめると、
1a. WebKit には制約があるが、他社も使っているため抜本的な改良ができない。
たとえばChromeは、ほかのブラウザと違うマルチプロセスアーキテクチャを採用する。このため、Chromium にとっても WebKit にとっても、複数アーキテクチャに対応するための作業が増えて進歩の足かせになっていた。またWebKit をベースにしつつ仕切りなおすことで、パフォーマンス向上のためのさまざまな手法を導入できる。
2a. 守るべきはウェブ標準であって、ひとつの実装ではない。
Chromeにとって互換性は重要。Chromium チームはこれまでも、互換性と相互運用性を維持するために膨大な努力をしてきた。姿勢は変わらず、今後も複数のブラウザベンダと協力して互換性を維持し改善してゆく。
また、WebKit はすでに単一ターゲットではなく、WebKit採用ブラウザのあいだでも標準サポートに違いがあるため、WebKit を採用すれば互換というわけではない。
モノカルチャーは短期的には開発者の生産性を上げるように見えるかもしれないが、長期的には停滞を避けられない。複数のレンダリングエンジンが存在することは、ちょうど複数のブラウザが競争するように、結局はオープンなウェブのエコシステム全体にとって良いことだと信じる。
