.NET Framework環境の利点の1つと言われているものに、サイドバイサイド技術というものがあった。これは、アプリケーションのランタイム環境や実行時に必要とするDLLを実行ファイル単位に用意することで、.NET Framework 1.1の実行環境と.NET Framework 2.0の実行環境が同じマシンに同居でき、しかもお互いに干渉しないようにできるということだ。
それなら、.NET Framework 1.xアプリケーションをわざわざマイグレーションしなくても済みそうなところだ。そのままサイドバイサイドで実行させ続ければよいからだ。
ここで問題となるのが、マイクロソフト製品のサポートライフサイクルだ。
2002年4月にVisual Studio .NET 2002と.NET Framework 1.0が登場してからすでに6年以上が経過した。今や.NET FrameworkはWindowsプラットフォームだけでなく、Silverlight 2によってそのほかのプラットフォーム進出までも果たしている。
Windowsプラットフォームでの開発にはもはや欠くことのできない.NET Framework。だが、1.0の登場当時、特にVisual Basicを開発言語に用いている技術者にとっては、完全なオブジェクト指向へのパラダイムシフトを必要としたせいか、移行にはそれなりの時間がかかったように記憶している。そのためか、.NET Frameworkが本格的に普及したのは、マイナーバージョンアップとなった.NET Framework 1.1になってからだった。
わたしのテストで本当に重宝したIE 8の機能は、クラッシュ対策とページ復旧の新機能だった。なぜなら先に触れた通り、β2はわたしのテストでは非常に不安定だったからだ。幸いなことに、新しい復旧機能は優れていた。1つのタブに表示しているWebサイトが問題を起こした場合、データはそのままでそのタブのみが更新され、ほかのタブには影響を与えない。ブラウザ全体がクラッシュした場合はタブがすべて自動的に復旧され、サイトのデータはそのままだった。
IE 8 β2の標準対応はIE 7に比べてかなり改善され、IE 8はWeb Standards ProjectのAcid2テストにも合格している。しかし、β版では新しいAcid3テストの成績はかなり悪く、現行世代のほかの全ブラウザに比べて相当後れを取っている。
開発者の観点から見ると、IE 8 β2はこれまでのバージョンよりもかなり親しみやすそうだ。非常に優れた開発ツールがブラウザに統合され、Webサイトのコードのテストやデバッグが手軽にできる。また、新機能の多くは開発者にも利用できる。
Chromeは3つの中核設計原則に基づいている。1つ目はシンプルなユーザーインタフェース。Chromeは2つのメニューと少数のツールバーアイコンだけを備えている。IEはバージョン7で同様のアプローチを採用したが、Googleとは違う。Microsoftはユーザーが従来のメニューバーに戻せるようにしているが、Googleはそうしていない。Chromeで追加できるツールバーアイコンはHomeボタンだけだ。
わたしの判決はこうだ。Chromeはスマートで革新的なブラウザであり、多くの一般的なケースでは、Webの利用はより速く、簡単になり、不満も少なくなる。だが最初のバージョン――まだβ版だ――は荒削りで、Googleが後で追加する予定の一般的なブラウザ機能が幾つか欠けている。ブックマーク管理、ブラウザから直接リンクやページを電子メールで送るためのコマンド、さらにはWebページのロードがどのくらい進んだかを示すプログレスバーもない。
GoogleはChromeは高速だと主張しているが、わたしがテストしたところでは、Webページを開くという普通の作業で、FirefoxやSafariよりも目に見えて遅かった。だが、IEの最新版――こちらもβ版で、IE 8という――よりは速いことが判明した。
一方のMicrosoftも何もしていなかったわけではない。IE 8のβ2はここ数年で最高のIEのバージョンだ。新しい独自機能が詰まっており、中にはChromeに似た機能も、わたしから見ればChromeに勝る機能もある。
Google Chromeの開発で最重要視したのが使いやすさとパフォーマンスであり、Googleが開発を進めてきたJavaScriptエンジン「V8」とAppleが無償公開するレンダリングエンジンの「WebKit」の組み合わせがその原動力になるという。V8という名称はV型8気筒エンジンに由来する。米国製自動車ではV8エンジンが高性能を表現するステータスシンボルであり、Google ChromeのV8はそのシンボルにあやかって命名されたものであるという。
V8はデンマークを拠点に活動しているJava VM開発のエキスパート、ラーズ・パーク氏のチームが20年近く蓄積したノウハウを反映させて実現したものだと、アプソン氏は説明。「既存の処理性能を何倍にも高速化することに注力し、今後のWeb世界での標準になることを目指したものだ」(同氏)
WebKitの採用理由について、同氏は「Safariでの採用実績に加え、描画処理性能の素晴らしさをわれわれも重視した。WebKitプロジェクトには、特に“セーフティブラウジング”(クラッシュなどの影響を最小限に抑えるなど)の部分で積極的にかかわってきた経緯もあり、Google ChromeではWebKitの成果を活用した」と話した。WebKitを採用することで、Web開発者がGoogle Chrome用に新たな開発を行わずに済むよう配慮したとも、同氏は説明した。
<!--CAP--> <!--CAPEND-->グーグルが独自に実施したレンダリングパフォーマンスの比較では、ローカル上に保存した複数サイトのWebページを連続表示させた場合、Internet Explorer 7では約257ミリ秒、Firefox 3では158ミリ秒、Google Chromeでは68ミリ秒という結果になった。
V8はデンマークを拠点に活動しているJava VM開発のエキスパート、ラーズ・パーク氏のチームが20年近く蓄積したノウハウを反映させて実現したものだと、アプソン氏は説明。「既存の処理性能を何倍にも高速化することに注力し、今後のWeb世界での標準になることを目指したものだ」(同氏)
WebKitの採用理由について、同氏は「Safariでの採用実績に加え、描画処理性能の素晴らしさをわれわれも重視した。WebKitプロジェクトには、特に“セーフティブラウジング”(クラッシュなどの影響を最小限に抑えるなど)の部分で積極的にかかわってきた経緯もあり、Google ChromeではWebKitの成果を活用した」と話した。WebKitを採用することで、Web開発者がGoogle Chrome用に新たな開発を行わずに済むよう配慮したとも、同氏は説明した。
アドレスバーと検索窓を兼ね備えた「多機能ボックス」や各タブが独立して実行する仕組みはシンプルさと使い勝手を追求した結果であるという
グーグルが独自に実施したレンダリングパフォーマンスの比較では、ローカル上に保存した複数サイトのWebページを連続表示させた場合、Internet Explorer 7では約257ミリ秒、Firefox 3では158ミリ秒、Google Chromeでは68ミリ秒という結果になった。 - Toshiro Shimura on 2008-10-04