
Webブラウザ非互換性の温床となったのは何か?
株式会社ピーデー 川俣晶
2008/7/3
Internet Explorer 8.0やFirefox 3.0で注目されるWebブラウザ。いまこそ、復習しよう。Webブラウザの非互換性の発生源は何だったのか? (編集部)
Webブラウザを総復習
- - PR -
Internet Explorer 8.0のベータ版が提供され、Firefox 3.0が正式リリースされるいま、Webブラウザをめぐる状況は再び激動しようとしています。
ここで、私たちWebブラウザのユーザーは、新しく提供されるWebブラウザのどれを使うべきか、あるいは、従来どおりのWebブラウザを使い続けるか、選択を行う必要に迫られます。
しかし、いまの私たちは、Webブラウザ選びを行うために必要な基礎知識を本当に持っていると、自信を持って断言できるでしょうか?
そんなことは分かっている、と思うかもしれません。
しかし、毎日使っていることで、つい「分かっている」と思い込んでいるだけかもしれません。事実として、例えば、「AブラウザとBブラウザはレンダリングエンジンが同じだから、互換性は高いのではないか?」といった誤解を含む意見を聞くことは珍しくありません。
ですので、この機会にWebブラウザの基本と仕組みを復習するのも悪いことではないでしょう。
なお、ここでの説明は、分かりやすさを優先し、技術的な意味で必ずしも正確ではない内容を含むことをお断りします。
WWWとWebブラウザの創生期
WWW(World Wide Web)は、ティム・バーナーズ=リーによって生み出され、1991年ころより利用可能となりました。当初は文字だけでしたが、画像も扱えるように拡張されていきました。現在のわれわれがイメージするWebブラウザとして最初に生まれたのは、おそらく1993年にマーク・アンドリーセンらによって開発されたNCSA Mosaicでしょう。
![]() |
| 画面1 Mosaicのスクリーンショット(NCSAのサイトより) |
NCSA Mosaicは、初期の時代の標準Webブラウザといっても過言ではないほど大きな存在感と影響力を持ったソフトでした。
しかし、この当時はインターネットそのものが研究用ネットワークという位置付けであり、一般には公開されていませんでした。そのため、Mosaicの知名度や影響力は狭い範囲に限られたのも事実です。
さて、NCSA Mosaicの開発に携わったマーク・アンドリーセンらは、シリコン・グラフィックスの創立者ジム・クラークとともにネットスケープ・コミュニケーションズ(創立時はMosaic Communications)を立ち上げ、同社は1994年、商用WebブラウザであるNetscape Navigatorを開発します。これが、Mosaicに取って代わる新しい標準ブラウザとなっていきます。
そして、1995年ころにインターネットが一般に公開されたことで、WWWは一般ユーザーにも注目されるようになります。ここで、新しくインターネットというフロンティアに入り込んだ多くのユーザーにとって、Netscape Navigatorはフロンティアを探索する主要なツールとなったのです。
これとほぼ同じころ、1995年にはInternet Explorerの最初のバージョンもリリースされています。これは、この当時NCSA Mosaicのマスターライセンスを所有していたスパイグラス社よりマイクロソフトがライセンスを受けてそれを基に開発したものです。その意味で、Netscape NavigatorとInternet Explorerは、NCSA Mosaicという同一のルーツを持つ兄弟のようなWebブラウザであったといえます。
しかし、同一のルーツを持つということは、同じような機能を持つことをまったく意味していませんでした。初期のInternet Explorerは機能面で大きくNetscape Navigatorに後れを取っており、ある程度まじめにWWWを使おうとするユーザーがInternet Explorerを使う姿はあまり見られませんでした。
「ルーツが同じ」は「動作も同じ」保証にならない
ここで1つ確認しておきましょう。
1995年ころに存在したNetscape NavigatorとInternet Explorerは、NCSA Mosaicという同一のルーツを持ちます。そのため、両者には似た部分が多くあります。例えばウィンドウ上部にURL入力欄や、「進む」「戻る」という機能を持つボタンがあるデザインは、NCSA Mosaic由来のものであり、Netscape NavigatorとInternet Explorerの両者に共通するものです。
そのほか、デザインや機能面で似ている部分は多くあります。しかし、似ていない部分が多かったことも忘れることはできません。機能的にはNetscape Navigatorの方が圧倒的に豊富であり、またHTML文書の解釈にも多くの相違がありました。
つまり、「ルーツが同じ」は「動作も同じ」保証になりません。Webブラウザの問題を考えるときに、これは重要なポイントです。強い競争にさらされ、不断の改良を続ける限り、どのようなソフトも独自の異なるものに進化していくわけです。
創生期のWebブラウザの仕掛け
この時代のWebブラウザは以下のような流れで処理が行われていました。
![]() |
| 図1 創生期のWebブラウザ |
ネットワークを経由して受信されたHTML文書は、HTMLパーサによって解析され、単なる文字列でしかない“<p>”といったタグが段落という意味に解釈されます。解釈された結果は、レンダリングエンジンに送られ、表示されるページ内容に変換されます。例えば、“<p>おはよう!</p>”は、HTMLパーサによって<p>……</p>が段落を示す要素と解釈され、レンダリングエンジンによって“おはよう!”が1つの段落としてページ上に配置されます。
以上のように、この時代の処理は基本的に直線的です。受信されたHTML文書はレンダリングエンジンに進み、処理結果が画面に表示されます。表示結果が得られた後でレンダリングエンジンに逆戻りすることはありません。つまり、Webブラウザ自身は、一度確定した表示内容を変更できません。変更するためには、変更されたHTML文書を再度サーバより受信する必要があります。
このような形式を、「静的」と呼びます。
それを前提としたHTML文書は“静的なHTML文書”と呼ばれます。
ブラウザ戦争勃発
ここで、Webブラウザの歴史をたどる作業に戻りましょう。
1996年にリリースされたNetscape Navigator 2.0には、Webブラウザ内でプログラムを実行する機能が与えられます。ここから、Webブラウザは「静的」な世界を離れ、新しい文書を再受信することなく内容を変更できる「動的」な世界に進み始めます。
実は、Netscape Navigator 2.0には2種類のプログラム言語が組み込まれていました。JavaとJavaScriptです。両者はまったく互換性のない別言語ですが、当初はJavaが本命と見なされていました。そのため、もともとLiveScriptという名前で開発されていたJavaScriptは、Java人気にあやかってJavaScriptと改名されたほどです。
しかし、Webブラウザ上で使用するJavaは、性能や非互換性等の問題から普及することはありませんでした。JavaはWebブラウザではなくWebサーバ上で使われるようになります。
JavaScriptはその後も改良を続けられていきます。
後続のInternet Explorerもバージョン3.0より対応を開始し、Netscape NavigatorとInternet Explorerは激しい機能強化競争を繰り広げます。
両者の競争は、技術のみならずマーケティング的な側面も含んで激化し、1997年ごろにピークを迎えます。このころは、ブラウザ戦争という言葉まで使われていました。
しかし、相互に互換性がない強化競争は利用者やサイト作成者に過剰な負担を強いることから、1997年にJavaScriptはECMAによりECMAScriptとして標準化され、1998年にW3CからDOM(Document Object Model)(詳しくは後述)が勧告される等の標準化の動きが生じます。
ダイナミックHTMLの仕掛け
この時代を象徴するキーワードが「ダイナミックHTML」です。
ダイナミックとは「動的」という意味であり、「静的」の対極にあるものです。
この時代のWebブラウザは、大まかにいえば以下のような流れで処理が行われていました。なお、この図は説明を簡単にするために単純化してデフォルメしています。実際にはHTMLだけでなくCSS等も処理されていたことにご注意ください。また、この図には描いていない制御の流れも存在します。
![]() |
| 図2 ブラウザ戦争時代のWebブラウザ |
この図を見ると、静的な時代と比較して、飛躍的に構造が複雑化したことが分かると思います。しかし、ここで注目すべき点は、静的なWebブラウザでは直線的に行われていた処理が、循環し続ける流れに変わったことです。この循環は、ユーザーの操作に応じて文書の内容を変更し、表示される内容を変化させます。それによって、新しい文書をサーバから受信せずとも、表示内容を変化させていくことが可能となったわけです。
| 1/2 |
| 関連記事 |
Ajax うきうき Watch
Ajaxという流行技術の定義を明確にしながら、Ajaxの動向からうきうきするような面白いもの、確実に押さえておきたいものを厳選してお届けしていく
- 第1回 Webアプリのユーザビリティを改善しまくるAjax
- 第2回 Ajax、それはWeb 2.0へと続く道
- 第3回 どんなに無茶をやっても「それもありかな」なAjax
- 第4回 自動車業界のAjaxを活用したキャンペーンを目撃せよ
- 第5回 “どのブラウザでも動くAjax”を共有財産として育てよう
- 第6回 プロプライエタリ2.0から考えるAjaxの公開/非公開部
- 第7回 メモリリークが小さくなったGoogle Maps APIの新版
- 第8回 “CGUI” 消費者が作り出すUIの時代突入
- 第9回 巨大化するAjaxライブラリをシンプルにする新たな流れ
- 第10回 地図のように年代を移動できるMITのAjax歴史年表
- 第11回 JSONがRFCになり、どんどんこなれるAjaxサービス
- 第12回 サーバが通信を開始できるComet活用Webチャット
- 第13回 オンラインゲームで検索精度を上げるGoogleの巧みさ
- 第14回 IE7とFirefox 2への利用者の大移動は起こるか?
- 第15回 グーグル検索エンジンを特定ジャンル専用に、Co-op
- 第16回 帯域やデバイス領域をフル活用させる“モバイルAjax”
- 第17回 新しい技術を模索するYahoo!、Google、MS
- 第18回 Ajaxの高度な使用例、Yahoo! pipes
- 第19回 Apollo参戦でウィジェット開発者の争奪戦が激化
- 第20回 Twitter登場で注目されるRTコミュニケーションツール
- 第21回 過熱するTwitterブームとMicrosoftのマッシュアップ
- 第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する
- 第23回 Ajax開発者がヒーローになるとき、それはいま!
- 第24回 携帯電話への拡張を進めるGoogleとWeb隠しコマンド
- 第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及
- 第26回 「言葉」を超えた説得力を持つAjaxの存在感と広がり
- 第27回 ゲームから読み解く、俺スクリプト時代の知的な挑戦
- 第28回 マッシュアップ元年が終わり、2008年はどうなる?
- 第29回 Twitterやクラウドへも分岐するAjax/Web APIの道
- 第30回 Ajaxはじめて物語、そしてサーバでも動くJavaScript
- 第31回 新ブラウザ戦争はon fireだがJavaScriptはoffのナゾ
- 第32回 Google App EngineはAjaxへのハードルを下げるか?
- 最終回 Pure JavaScriptの動画再生やRPGも好きでした
| いまさら聞けない「Webブラウザ」超入門 いまさら聞けないリッチクライアント技術(11) インターネットに接続するために、当然のように利用するWebブラウザ。Webサーバとのやりとりから、その仕組みを知っておこう 「リッチクライアント & 帳票」フ ォーラム 2008/4/14 |
||
| INDEX | ||
| AcidテストとWebブラウザの仕組み | ||
| Page1 WWWとWebブラウザの創生期 「ルーツが同じ」は「動作も同じ」保証にならない 創生期のWebブラウザの仕掛け ブラウザ戦争勃発 ダイナミックHTMLの仕掛け |
||
| Page2 それぞれの役割 すべてが非互換性の温床 ダイナミックHTMLの復権 Webブラウザの今 黄金時代の死 |
||
AcidテストとWebブラウザの仕組み バックナンバー
- 第1回 Webブラウザ非互換性の温床となったのは何か?
- 最終回 Webブラウザ標準適合性のわなとAcidテストの正体
| リッチクライアント&帳票 全記事一覧へ |
TechTargetジャパン
- NFCやLTE対応予定のiPhoneと、先行するAndroid (2012/2/9)
iPhoneとAndroid、そしてWindows Phoneという3つのOSの今後を占う。それぞれの通信規格とコンセプトは? - 家電のUIになるブラウザ (2012/2/3)
未来の家電はインターネットに接続でき、ブラウザが内蔵されてくる。家電にブラウザが載ったらどうなるか? 未来のホームネットワークを想像しよう - 「汎用のUI技術」として広がるHTML5 (2012/2/2)
すさまじい勢いで成長しているHTML5を中心としたオープンなWebプラットフォーム。HTML5やAPI、Webブラウザのアップデート情報をお伝えする - ビヨンド・クールジャパン!? (2012/1/27)
コンテンツという文化力と、ものづくりという技術力を掛け合わせる。両方を国内に持ち合わせている国は多くない。チャンスなのだ
|
|



