MSがGoogleに白旗!? マイクロソフトが「Microsoft Edge」を「Chromium」ベースに。令和のWebブラウザ事情

HTMLレンダリングエンジンは様々な場所で使われている

 さて、こうしたHTMLレンダリングエンジンだが、Webブラウザだけで使われているわけではない。  たとえばメール閲覧ソフトの表示部分には、HTMLレンダリングエンジンが利用されている。他にもWindowsのヘルプなどでも使用されている。画像を含んだリッチなテキストを表示するのに、HTMLレンダリングエンジンはとても便利だからだ。  また、HTMLレンダリングエンジンは、プログラムの部品になっており、それらを利用して独自のソフトを開発することができる。  Windowsでは、IEコンポーネントとして「Trident」が利用できる。一時期は、この機能を利用して、様々なIEコンポーネントブラウザが作られた。「Donut」「Lunascape」「Moon Browser」「Sleipnir」などの名前を聞いたことがあるかもしれない。こうしたWebブラウザは、既存のHTMLレンダリングエンジンを利用して開発されていた。  筆者も、オンラインソフトを作る時に、IEコンポーネントを利用した経験がある。  WebKitを利用したソフトウェア開発は、「Electron」や「NW.js」が主流になっている。これらの実行環境は「WebKit」と「Node.js」を利用している。 「Node.js」は、GoogleのJavaScript実行エンジン「V8」を元にした、サーバーサイドJavaScript実行環境だ。「Node.js」は、ローカルのJavaScript実行環境としても広く利用されている。この「Node.js」と「WebKit」を合体させて、GUI環境を作ったのが「Electron」や「NW.js」だ。 「Electron」や「NW.js」は、Web系企業がローカルアプリを作る際によく使われる。また、プログラミング開発環境として利用されることも多い。たとえば「Electron」では、「Skype」「GitHub Desktop」「Visual Studio Code」「Slack」「Discord」などのローカルアプリが作られている。  既にWebサービスを持っており、そのローカル版を開発したい場合に選ぶと、少ない工数で開発できる。筆者も「Electron」や「NW.js」をよく利用しており、その内容に概ね満足している。

実は結構大きな意味を持つMSの転向

 マイクロソフトが「Microsoft Edge」を「Chromium」ベースに変えるということは、Webブラウザの潮流が1本減ることを意味する。このままいけば、あるいは10年経たずに潮流は「WebKit」系に統合される可能性がある。  そうなれば、大きな脆弱性が見つかった際に、代替のWebブラウザがないという状況が起こりうる。  生物環境と同じで、多様性が失われれば突然死が起きる可能性がある。ソフトウェアにはバグが付き物だ。そして、セキュリティの穴を完全に塞ぐことは難しい。  Webとの接点になるWebブラウザだが、その多様性は失われつつある。代替環境がなくならないように、「Mozilla FireFox」の動向を注視したいと思う。 ◆シリーズ連載:ゲーム開発者が見たギークニュース <文/柳井政和 photo by Ken Yamaguchi via flickr(CC BY-SA 2.0)> やない まさかず。クロノス・クラウン合同会社の代表社員。ゲームやアプリの開発、プログラミング系技術書や記事、マンガの執筆をおこなう。2001年オンラインソフト大賞に入賞した『めもりーくりーなー』は、累計500万ダウンロード以上。2016年、第23回松本清張賞応募作『バックドア』が最終候補となり、改題した『裏切りのプログラム ハッカー探偵 鹿敷堂桂馬』にて文藝春秋から小説家デビュー。近著は新潮社『レトロゲームファクトリー』。
やない まさかず。クロノス・クラウン合同会社の代表社員。ゲームやアプリの開発、プログラミング系技術書や記事、マンガの執筆をおこなう。2001年オンラインソフト大賞に入賞した『めもりーくりーなー』は、累計500万ダウンロード以上。2016年、第23回松本清張賞応募作『バックドア』が最終候補となり、改題した『裏切りのプログラム ハッカー探偵 鹿敷堂桂馬』にて文藝春秋から小説家デビュー。近著は新潮社『レトロゲームファクトリー』。2019年12月に Nintendo Switch で、個人で開発した『Little Bit War(リトルビットウォー)』を出した。
1
2
PC_middleRec_left
PC_middleRec_right
関連記事
PC_fotterRec_left
PC_foterRec_right