Hebikuzure's Tech Memo

2013年12月1日

Internet Explorer の歴史

Filed under: Yet Another Internet Explorer Advent Calendar 2013 — hebikuzure @ 8:48 PM


この記事は “Yet Another Internet Explorer Advent Calendar 2013” の1日目です。


まずはおさらいとして Internet Explorer の歴史をまとめてみましょう。WIKIPEDIA (英語版)などに良記事があるのですが、個人的な感想なども含めてまとめたいと思います。
なおスクリーンショットはこちらのサイトなどで見ることができますので、この記事では省略します。

Internet Explorer 1

Internet Explorer 1 は 1995年8月16日に公開され、8月24日にWindows 95 の発売と同時に、Windows 95 の有償のアドオンパックである「Plus! for Windows 95」に含まれる “Internet Jumpstart Kit” の一部として発売されました。ただし日本では日本語版 Windows 95 自体の発売が 11月23日になったため、IE1 を含む日本語版の「Plus! for Windows 95」は販売されていません。なお Plus に含まれる “Internet Jumpstart Kit” の部分は Plus ユーザーへの無償提供という扱いで、また OEM PC メーカーが “Internet Jumpstart Kit” を Windows 95 にプリインストールすることもできるようになっていたとの事ですが、実際にプリインストールしていた PC があるのかどうかは (米国の事でもあり) 不明です。

Internet Explorer 1 は Spyglassから NCSA Mosaic のライセンスを受けて開発されたため、レンダリングエンジンも現在の Trident ではなく Mosaic と同じ Spyglass が使われていました。こうした状況でもわかるようにこの時点では Microsoft のインターネットへの取り組みは立ち遅れていて、Windows 95 の開発段階ではネットワーク コミュニケーション機能としては MSN のような「パソコン通信」型のサービスが中心に考えられていたようです。しかしその過程で Microsoft の予想を超えてインターネットの利用が広がりを見せたため、急遽本製品とは別のアドオンパックに含む形で独自のブラウザーの提供に踏み切ったと考えられます。

ただし本当に「急遽」だったようで、Internet Explorer 1 は「ページが表示できる」というだけで機能が低く (table にも未対応) 、当時の他のブラウザーに見劣りするものだったため、あまり利用されなかったと思います。個人的にも使った事はありません。

なお現在の Internet Explorer にも含まれている ftp クライアント機能はこのバージョンから含まれています。

Internet Explorer 1.5

このバージョンは Internet Explorer 1 を Windows NT 3.5 に対応させて、かつ機能を追加したもの、という事なのですが、正しいリリース日は確認できませんでした (1996年1月らしい)。Internet Information Server 1.0 に同梱される形でWindows NT 3.5/3.5.1 向けに提供された他、Windows NT 4.0、Windows 95 にもインストール可能だったとの事です。個人的には使った事はありません。

Internet Explorer 2 のリリース後なのになぜ「1.5」なのかというと、レンダリング エンジンが Spyglass のままだから、という事のようです。

Internet Explorer 2

Internet Explorer 2 は 1995年11月22日 (日本時間では23日) にリリースされました。前述のようにこの日に日本語版 Windows 95 がリリースされ、日本語版「Plus! for Windows 95」には最初から Internet Explorer 2 が含まれていました。また Windows 95 OSR1 (OEM Service Release 1、OEM 版の Windows 限定の更新版。昔はこういう物があった) にも含まれていたため、これをプリインストールしたメーカー製の PC には最初から含まれていました。OSR1 は OEM にのみ提供されパッケージ版 Windows 95 は更新されなかったため、パッケージ版の利用者が Internet Explorer 2 を利用するには Plus! を購入する必要がありました。

このバージョンからサポート プラットフォームが増えて、Windows NT 3.5、Windows 3.1、MacOS System 7 (68000用および PowerPC 用)、IBM OS/2 用もリリースされています。レンダリング エンジンは Spyglass その物では無く、それをを改良したもの (fork して作成しなおしたもの) が利用されているようです。

機能的には SSL や Cookie のサポート、HTML3 の table や frame のサポート、Netscape からのブックマークのインポートなどが追加されています。これでようやくブラウザーとしての実用性が出てきたと言えるでしょう。

Internet Explorer 3

Internet Explorer 1 から続くシリーズの最後となるのが Internet Explorer 3 で、1996年8月13日 (日本では16日) にリリースされました。レンダリング エンジンは Spyglass + α の機能のエンジンを、Spyglass のソースコードは使用せずに (コードを fork したのではなくスクラッチで) 作成したと言われています。Windows 95 OSR2 に含まれるほか、Windows NT 3.5/3.51、Windows NT 4.0、Windows 3.1、Windows 95 にインストール可能でした。また Mac OS の System 8 の標準ブラウザーとして搭載され (この背景には Jobs 復帰後の Apple と Microsoft の歴史的な和解があります)、IBM OS/2 用もリリースされました。

このバージョンで始めて「悪名高い」 ActiveX がサポートされ、また Netscape 互換の Plugin サポート (NPAPI) も含まれたため、ブラウザーに拡張機能を追加するという事が可能になりましたが、これは今から考えると色々なトラブルの元を作った事でもあると言えます。また Netscape で人気だった JavaScript も (リバース エンジニアリングしたと言われていますが) JScript として搭載しました。その他には CSS1 (ただしバグが多かった) 、HTTP/1.1プロトコル、SSL3.0 のサポートもされ、Microsoft JAVA VM も搭載されています。さらにインターネット メール/ニュースグループ クライアントの Internet Mail and News とメッセージング クライアントの NetMeeting を添付するなど、当時の Netscape などと同様の総合的なインターネット クライアント スーツとしての性格を打ち出しています。

個人的にはこのバージョンが最初に利用した Internet Explorer で、(当時としては) Netscape より軽く動作し、また次の Internet Explorer 4 のようにデスクトップ更新 (Windows エクスプローラーとの統合) をしないので、IE4 がリリースされた後もしばらくは Windows 95 環境では IE3 のまま利用していたのを思い出します。当時 PC 雑誌に記事を書いており、記事でレビューを依頼されたソフトウェアが Internet Explorer 4 必須だったので、編集者の方と「IE と言えば 3 でしょう。4 とかあり得な~い!」と言いながら仕方なくインストールした事を思い出します。

なおアプリケーション アイコンが丸い “e” の印になったのもこのバージョンからです。

Internet Explorer 4

1997年9月30日にリリースされました。このバージョンからレンダリング エンジンが Trident に変更されます。また前述のようにインストールすると Windows のシェル自体が更新され、Windows エクスプローラーと Internet Explorer が統合されました。Active Desktop とも呼ばれるこの動作については当時も毀誉褒貶であり、今から考えると「やらなくてもよい事をやってしまった」感はあります。Windows 95 OSR 2.5 に搭載され、さらに 1998年7月25日発売の Windows 98 の標準ブラウザーとして搭載されましたが、この Windows とブラウザーの統合が後に独禁法関係の紛争の元ともなり、結果的に Microsoft にとってはあまり良い選択ではなかったかもしれません。

Windows 98 の他に、Windows 3.1、Windows 95、Windows NT 3.5/3.51、Windows NT 4.0 にインストール可能で、Mac OS System 8.5 にも標準ブラウザーとして搭載されました。OS/2 向けが提供されなくなった代わりに Solaris と HP-UX 用の IE 4.0 for Unix がリリースされています。

機能としては先の Active Desktop の他、Channel (登録したサービスからのプッシュ配信) が目玉でしたが、こちらは (常時接続がまだ普及していなかったため) あまり利用されずに終わっています。また Internet Mail and News は Outlook Express に置き換えられました。拡張機能としては BHO (Browser Helper Object) が利用できるようになります。これにより高機能なツールバーや機能拡張が可能になりましたが、反面セキュリティ上問題のある拡張機能がインストールされてしまったり、品質の良くない拡張機能のために IE 自体がクラッシュしたりエラーを起こしたりする、という歓迎すべからざる事態も招いてしまったのはよく知られていることでしょう。

そして何より重要なのは、Dynamic HTML が搭載されて事でしょう。それ以前の Netscape Navigator でも一部の HTML 要素への動的アクセスは可能でしたが、それを拡張してページ上の要素全体に対してプログラム可能な動的アクセスを可能にした事は、今日の Web の可能性に繋がる大きなステップでした。Dynamic HTML は他のブラウザーにも波及し、DOM として標準化が進められることになります。ただし Internet Explorer はその当初の実装との互換性を重視しなければならなかったため、標準化される仕様をそのまま取り入れることが難しく、後日「独自実装」として批判される事になるのは皮肉なことかもしれません。

その他、Favicon も Internt Explorer 4 で搭載された機能で、他のブラウザーにも互換の機能が普及していく事になります。

なお Windows デスクトップとの統合と同時に Internet Explorer 自体の COM 化も行われており、Windows アプリケーション内に web browser コントロールとしてブラウザー機能を簡単に組み込む事ができるようになりました。これをさらに応用して、レンダリング エンジンのみ IE (Trident) を利用し、ユーザー インターフェイスを独自に構築するタイプのブラウザーが出現することにもなります。

個人的には Windows 98 の標準ブラウザーだから使っていました、Active Desktop はやはり色々なトラブルの元になりました、という以上の感想はあまりありません。Windows 98 Second Edition が出たらすぐにアップグレードして IE5 に移行したので、あまり長い間利用していなかったという事も影響しているのでしょう。

Internet Explorer 4.5

Mac OS System 8.6 向けに 1999年1月6日にリリースされたバージョンです。68000 プロセッサのサポートが廃止されました。System 9.0.4 まで搭載されています。

Internet Explorer 5

前述のように Windows 98 Second Edition に含まれ、また Office 2000 にもバンドルされた (Office 2000 は Internet Explorer 5 のインストールが必須だった) バージョンで、1999年3月18日にリリースされました。

このバージョンではいくつかの意欲的な機能が盛り込まれています。例えば双方向 (bi-directional) テキスト、ルビ、XML/XSLT のサポートなどです。双方向テキストやルビは今日 HTML5 で標準化されつつある訳で、国際化についての先見の明があると言えるでしょう。Trident エンジンになって二代目で、動作も IE4 より安定しており、肥大化と動作速度の低下が目立っていた当時の Netscape が厳しい状況になっていったのは単に「Windows に標準添付」だからというだけではなかったように思います。

そしてこのバージョンで搭載された機能で、今から考えるともっとも影響が大きかったのが XMLHttpRequest でしょう。HTTP のページリクエスト/レスポンスとは非同期的に、ページ内のスクリプトからサーバーのデータを取得し、それを Dynamic HTML を利用してページの表示に反映させるという「Ajax」の基盤となるテクノロジーです。元々は Outlook 2000 に対応した Exchange Server の Web メール機能 (Outlook Web Access) で、ページ遷移なしにメッセージ一覧とメッセージ表示を切り替える手段として考案されたと言われていますが、これが Internet Explorer に搭載されたことが、今日の動的な Web サイト/ Web アプリケーションの基礎となっているのです。

もっともリリース スケジュールの都合でこの機能を Internet Explorer 自体のコンポーネントに盛り込めず、代わりに MSDE のコンポーネントとして提供される ActiveX として実装したことが、またまた後日「独自実装」として批判される訳ですから、なかなか難しいものです。

もう一つ、キャッシュ (インターネット一時ファイル) の形式がこのバージョンで変更され、その形式が IE9 まで引き続き利用される事になります。インデックスが独自形式のバイナリ データとして管理されているのですが、比較的破損しやすくキャッシュ絡みのトラブルが IE につきまとう原因でもあります。

Windows 3.1、Windows 95、Windows 98、Windows NT 3.51/4.0 にインストール可能で、Windows 2000 にも標準ブラウザーとして搭載されています。また Mac OS System 9.1 と Mac OS X 10.0 の標準ブラウザーでもあります。Solaris と HP-UX 用の IE 5 for Unix もリリースされました (UNIX 用はこれが最後のバージョンになりました)。

個人的には IE4 から移行した物の、比較的短い期間で IE5.5、IE6 がリリースされたため、あまり印象がないバージョンです。

Internet Explorer 5.1/5.2

これも Mac 向けのバージョンです。Internet Explorer 5.1 は Mac OS X 10.1 の、Internet Explorer 5.2 は Mac OS X 10.2 の標準ブラウザーとしてリリースされました。Mac 用としてはこれが最後のバージョンです。

Internet Explorer 5.5

2000年7月17日にリリースされました。Internet Explorer 5 の改良版という位置づけで、Windows Me に標準ブラウザーとして搭載されました。機能面では印刷プレビューの搭載、CSS と HTML の標準サポート (ただしバグも少なくなかった) 、オートコンプリートなどが盛り込まれており、また SSL での 128ビット暗号化もサポートされています。このバージョンまでと、次の Internet explorer 6 以降ではレンダリング ロジックに違いがあり (IE6 以降の方がより標準準拠)、そのため「ドキュメント モード」という互換機能がそれ以降の Internet Explorer には搭載される事になります。

Windows Me の他、Windows 95/98、Windows NT 4.0、Windows 2000 にインストールできました。前述のようにこのバージョンから Windows 以外のプラットフォーム向けの提供が無くなっています。

個人的には、IE6 移行するまでの期間が短く、これもあまり強い印象の無いバージョンでした。

※ Internet Explore 6 以降は明日に続く………

広告

3件のコメント »

  1. IE2は当時使っていたことがありますが、フレーム未対応だったはずですが。
    http://www.wincons.or.jp/article/ie30ship.html でも、フレームはIE3で対応したと紹介されています。

    コメント by えむけい — 2013年12月1日 @ 10:13 PM


RSS feed for comments on this post. TrackBack URI

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

WordPress.com で無料サイトやブログを作成.

%d人のブロガーが「いいね」をつけました。