Internet Explorerが他のブラウザーと非常に多くの非互換性を持っているのはなぜですか?


10

Internet Explorerには、他のブラウザーにはない独自の機能が多数あり、標準との非互換性も多数あります。それらの非互換性の原因が何であるかを誰かが知ってますか?

例:Crossriderフレームワークを使用してブラウザー拡張機能を開発しています。拡張機能は、[Windows | Mac OS | Linux]と[Chrome | Firefoxは]それはIE IEためのハンドルでは動作しません$(window).height()$(window).scrollTop()は異なるビット。

その状況の既知の徹底的な分析、または原因を明らかにする内部関係者へのインタビューはありますか?それは企業文化、設計プロセス、QAの欠陥、またはいくつかの恐ろしい未知の遺産ですか?


4
おそらく後方互換性です。IEはそれらの中で最も古いものです。
Manoj R

20
Microsoftの文化は、独自の標準と独自の小さな世界を作成しようとして、広く受け入れられている標準に従わないことだと思います。彼らは、ネットワークプロトコルからソフトウェア開発環境に至るまで、すべてにこれを行ってきた歴史があります。
maple_shaft

16
@ManojR IEが最古ではない:en.wikipedia.org/wiki/History_of_the_web_browser
ポール・

14
キーワードは、抱擁、拡張、消火です。
SF。

10
すごい。私は15分間かけて、CSS / HTML / JSでのR&Dではなく、MSがIEでの取り組みをActiveXを介したOSの緊密な統合にどのように選んだかについての説明を入力しました。 (
グラハム

回答:


23

Microsoft®InternetExplorer®が他のブラウザーや公開されている標準と互換性がないのはなぜですか?

  1. 他のブラウザにはない機能を追加するには
  2. プログラマーがIEのみの機能を使用するWebページを作成する場合、コードは他のブラウザーでは機能しません。これにより、エンドユーザーはこれらのサイトをIEで表示することができます(したがって、より多くの人がIEを使用します。これはWindowsでのみ実行されるため、より多くの人がWindowsを使用します)。
  3. Microsoftツール(FrontPageが最も有名です)は、IEでのみ機能する、またはIEで最適に機能するコードを生成する傾向があります。これは上記の#2を促進しますが、そのWebサイトまたはWebアプリケーションで作業する次の開発者は、最初に使用されたものと同じMicrosoftテクノロジを使用して生成するか、プロジェクト全体を異なるテクノロジー。

企業イントラネットは、すべてのユーザーが同じブラウザーを使用する環境を提供するため(新しいバージョンがリリースされるまで)、この戦略に対して特に脆弱です。また、サイトが顧客に対応していない場合、複数のブラウザーをサポートするためのわずかなコストでさえ予算はありません。時間の経過とともに、企業のレガシーイントラネットサイトは、その企業全体がIE(または特定のバージョンのIE)を別のブラウザーに放棄することを妨げています。

マイクロソフトのアプローチは両刃の剣です。一方では、AJAXを可能にするXML / HTTP非同期要求機能(およびその他のポジティブな革新)を生み出し、他のブラウザーがすぐにそれをコピーしました。しかし、Microsoftは相互に互換性のないバージョンのIEを作成することにもなり、Microsoftの計画に最も積極的に取り組んだ開発者たちを苦しめています。

バージョン間のIEの非互換性の私のお気に入りの例は、Micrsoft独自のIE6カウントダウンキャンペーンです。このキャンペーンでは、独自のブラウザーを使用しないように勧めています。Microsoftは人々に最新バージョンのIEへのアップグレードを促すことができるが、「IE6 Must Die」と叫ぶ人はユーザーにIEの代わりに別のブランドのブラウザーを使用するように促す可能性が高いという理論です。

要するに、Microsoftが市場を支配するというかなり成功した戦略であり、時々他の業界に打撃を与え、時には助けてきました。私自身、検証済みの標準に準拠したHTMLのみを作成し、市場シェア2%以上の最新バージョンのブラウザー(およびIEの最新3バージョン)でテストします。


MicrosoftおよびInternet Explorerは、米国およびその他の国におけるMicrosoft Corporationの登録商標です。


2
IE6について話していれば、私はこれの大部分に同意します。9以降はどうですか?
ビリーONeal 2013年

11

いつものように、問題はインセンティブの1つです。何かが実際に起こる理由を知る必要がある場合(人々が主張するものとは対照的であるか、または信じたいと思っている場合)、お金に従ってください。

主要なテクノロジー(パーソナルコンピューティング)で快適な市場での地位を得ている状況を想像してみてください。ネットワークの価値は、そのサイズの大部分を占めるため、製品でできるだけ多くのユーザーにリーチできるようにしたいと考えています。彼らはおそらくあなたのシステムをすでに使用しているので、新しい機能を導入し、あなた自身の製品との後方互換性にのみ努力を払う価値があります。競合他社の製品との互換性は、優先度の高いリストよりも低くなります。実際、競合他社の製品の相互運用性が十分に高まり、システムなしで誰かが実行できるようになると、コストかかる可能性があります。

ここでは、開発者や管理者の側に意識的な悪意を抱く必要もありません。一般的なものに貢献するのではなく、独自のことを行い、独自のプロトコルや標準などを宣伝することは、支配的なプレーヤーにとっては単なる自然な行動であり、一般に公衆が明らかに承認したくない非常に厳格な法的措置なしではおそらく避けられません。実際、マイクロソフトでの考え方について聞いて読んだことのほとんどは、ほとんどの人が本当に正直に 彼らの製品は非常に素晴らしく優れており、不愉快な不正コンテンツだけがそもそも何かを使用したいと思うでしょう。そして、クールな新しいものを「革新」するのではなく相互運用性に努力を費やした場合、彼らは忠実な顧客に大きな害を及ぼすでしょう。

さまざまな製品をサポートする必要のある Web開発者に苦痛を与えることは、この態度の副作用です。外部の実務者にとっては非常に冷酷で、さらには邪悪であるように見えますが、テーブルが魔法のように反転された場合、私たちの多くが同じスタンスをとると思います。


2

IEが引き起こす悲しみは2つの部分からなる問題であり、どちらもIEが最初のブラウザ戦争で勝利したという事実から生じています。以前は最高で最も高度なブラウザでしたが、彼らは長い間アイドル状態でキャッチアップを行っていますが、多くの企業が何百万もの企業が機能する内部サイトに投資しているため、今では他のブラウザが抱える巨大なレガシー負担を抱えていますIEの特定のバージョン。MSがバージョン間の移行をできる限り苦痛なく行わなければ、MSは自殺するだろう。2つ目は、最初のブラウザ戦争で勝利し、完全な独占に近づいていたため、W3Cは、ブラウザに関する限り、標準化団体としての関連性を維持するために、既存のIE機能と競合する標準を積極的に記述し、それらの標準に準拠した新しいブラウザのおかげです。働いた。


2
その2番目のアサーションをいくつかの検証可能な事実で裏付けることができますか?
Bart van Ingen Schenau 2013年

@Bart私はそのような存在が実際に存在することを示す実際のメンバーのような何かを疑います、私はw3cボックスモデルが彼らがある程度これをしたことのかなり良い証拠だと思います。
Ryathal 2013年

2
その場合、私はW3Cとの非互換性のための故意の意図を帰することをためらうでしょう。それから、IEが準拠しているとW3Cが判断したか、IEを標準に簡単に変換できるほど差が小さかったと考えることもできます。
Bart van Ingen Schenau 2013年

1
第一次ブラウザ戦争でのIEの主な競争相手である@BartであるNetscapeは、W3Cにかなり準拠していませんでした。それ以降のバージョンのMozillaと初期のFirefoxになって初めて、合理的に準拠したブラウザが利用可能になりました。しかし、それらのブラウザーはIE6より後の日付です。
ビリーONeal 2013年

@BillyONeal:ありがとう。これにより、W3CがIEをbashすることを目指していなかったという私の信念が強まりました。
Bart van Ingen Schenau 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.