このページの本文へ

前へ 1 2 3 次へ

背景には技術的問題、それともAppleとの確執か?

新Webエンジン「Blink」—GoogleはなぜWebKitを捨てたか?

2013年04月08日 20時00分更新

文● 鈴木淳也(Junya Suzuki)

  • この記事をはてなブックマークに追加
  • 本文印刷

 先週、Webブラウザーの世界にふたつほど衝撃的なニュースが走った。ひとつ目はMozillaがSamsungと共同でプログラミング言語Rustをベースにした新Webレンダリングエンジン「Servo」の開発を進めていくと表明したこと、そしてもうひとつが今回の主題、GoogleがWebKitを離れて「Blink」への移行を表明したことだ(開発者向けバイナリーを配布するGoogle Chrome Canary(28.0.1468.0 canary)では、すでにBlinkが含まれている模様)。

 Mozillaの抱えるGecko、AppleとGoogleが推進するWebKit、そしてMicrosoftのTridentの3つは、Webブラウザー業界においてシェアのほとんどを握る3大勢力となっている。その勢力のうちのふたつが従来の技術とは別の新しいエンジン採用と開発推進をほぼ同時に発表したことは、今後のトレンドを語る上で非常に大きな意味を持つ。ここでは、その背景と今後について探ってみる。

AppleのWebKit、GoogleのBlink―両者はすでに互いのコードを排除へ

 今回、GoogleのBlinkへの移行は、同社ソフトウェアエンジニアのAdam Barth氏によるChromiumプロジェクトでの投稿が発端になっている。

 Barth氏はChromeブラウザーのエンジニアの1人であり、さらにはChromiumやWebKitなどオープンソースプロジェクトでのコントリビューターでもある。ある意味でGoogleでのWebKitプロジェクトを代表する重鎮だ。

 その同氏の説明によれば、Chromiumでは他のWebKitベースのWebブラウザーとは異なるマルチプロセス技術を用いたアーキテクチャを採用しており、WebKitとChromiumとの間での整合性を保つ難しさを抱えていることもあり、苦渋の決断として、「Blink」というWebKitのエンジンをベースにした新しいプロジェクトへの移行を選んだという。

 一般に、オープンソースの世界で従来のプロジェクトから分岐して同技術のコードをベースにした新しいプロジェクトを立ち上げることを「Fork」(フォーク)と呼んでおり、BlinkはWebKitのForkにあたるプロジェクトということになる。

 なおBarth氏によれば、Blinkではすでにアーキテクチャ変更とコードのシンプル化に着手。WebKitに由来する、Blinkには必要ない7種類のビルドの除外や7000以上のファイル削除で、450万行以上のコードの削減が行なわれる見込みだとしている(関連リンク、おそらくはSafariなどのApple製品向けのポーティング関連ファイルとみられる)。これにより、より動作の安定化やバグの削減が可能だという。

 The Vergeによれば、Chromeブラウザーは今後10週間以内にも内部の動作エンジンをWebKitからBlinkに変更完了する見込みで、事実上GoogleはWebKitプロジェクトから完全に離れる形となる。

 一方、Googleが離れたことでWebKitプロジェクトの多くもApple関係で占められることになる。WebKitではすでにChrome関連コードの除外を始めているという話が出ており(関連リンク)、同じ源流を持つプロジェクトがAppleではWebKit、GoogleではBlinkという形で別々の道を早くも模索し始めている。

 ではなぜ、こうした事態に発展したのだろうか? WebKitの歴史を紐解きつつ、その関係について見ていこう。

前へ 1 2 3 次へ

カテゴリートップへ

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン