Webの主役は今や静的なWebページではなくて複雑なWebアプリケーションだが、そのためにブラウザーには、対話的なコンテンツを遅れやコマ落ち等なく表示できる高い性能が求められる。今日(米国時間10/27)のブログ記事でMozillaは、Quantumと名付けた新しいプロジェクトの概要を述べている。それは、このような変化にもっとも基本的なレベルで対応しようとするブラウザーエンジンだ。このプロジェクトが完成するとFirefoxユーザーのWeb閲覧体験は、今よりもずっとスムーズなものになる、と述べられている。
Quantumは、複雑なWebサイトでスムーズな閲覧体験を提供しようとする過去のプロジェクト、ServoとRustがベースだ。プログラミング言語Rustは、Mozillaの職員が個人的に開発した。それは、並列処理プログラムの高速化と、スレッドおよびメモリの安全性を目的としている。
このパズルのもうひとつのピースServoは、Mozillaがスポンサーしているコミュニティベースの並列処理型Webエンジンだ。これで、Rustが登場する理由も分かる。Quantumの主要部位の多くをServoが提供することになり、それによりWebページのレンダリングを改善していく。
この取り組みとは別に、Mozillaにはかねてから、Firefoxをマルチプロセス化するElectrolysisというプロジェクトがある。Mozillaは大量のリソースをElectrolysisの開発につぎ込んでいるが、しかしそれでも前から一貫して、ほかの取り組みもある、と示唆し続けてきた。
そして今では、Electrolysisは、Quantum開発のための基礎工事の最初の部分、という位置づけになっている。そして次の段階としては、これまでのGeckoエンジンの主要部位を捨てて、並列処理とGPUの併用をベースとするより効率的な部位に置き換えていく。
Mozillaのプラットホーム技術部長David Bryantはこう説明する: “いちばん基盤的な部分の構造部位(building blocks)を作り変えようとしている。たとえば(ブラウザーレベルでの)CSSの実装、DOMの操作、グラフィクスのレンダリングなどだ”。
新しいエンジンではコンピューターの処理能力をより効果的に利用するために、重要なWebコンテンツの優先順ランクを決める。QuantumはElectrolysisと共に、Firefoxのデスクトップユーザーには数か月後に展開される。それにより、ブラウザーの安定性とセキュリティ、およびWeb閲覧体験の全体的なクォリティが改善されるだろう。
Mozillaの予定では、QuantumをエンジンとするFirefoxの最初のリリースは2017年末(Android, Windows, Mac)だ。iOSはやや遅れるようだが、Firefox for iOSがQuantumの仲間はずれになることはない。