ブラウザプラグインはもうすぐ出ます。 AppleのiOSはプラグインをサポートしたことがなく、FlashはAndroid向けに長い間廃止されており、Windows8向けの新しいバージョンのIEはほとんどのプラグインをサポートしていません。 Chromeはまもなく従来のNPAPIブラウザプラグインをブロックします。
ウェブが逆行して機能が失われることはありません。ブラウザプラグインが廃止されるのには十分な理由があり、廃止されるとウェブはより良くなります。ブラウザ開発者は、プラグイン機能をブラウザ自体に統合しています。
これは適用されないことに注意してください 拡張機能またはアドオン 、Flash、Silverlight、およびなどのWebサイトで実行されるプラグインのみ ひどく安全でないJavaプラグイン 。
ブラウザプラグインが作成された理由
ブラウザプラグインは、作成時に非常に必要でした。当時、ブラウザはかなり未成熟でした。さらに悪いことに、ブラウザの開発はやがて行き詰まりました。 MicrosoftのInternetExplorer 6は、WindowsXPが最初にリリースされた頃の2001年にリリースされました。 Microsoftはブラウザ戦争に「勝ち」、トップに立っていたので、開発者をInternetExplorerから引き離すことに決めました。 IEの開発を完全に停止する 。 InternetExplorerの次のバージョンであるIE7は、5年以上後の2006年にリリースされました。 IE7および8年後の2009年にリリースされたIE8でさえ、IE6よりもかなり小さな改善でした。
関連: なぜそんなに多くのオタクがInternetExplorerを嫌うのですか?
5年以上の間、ほとんどのWebユーザーのブラウザー開発は停滞していました。この遅いブラウザ開発は、プラグイン開発者に大きなチャンスをもたらしました。 AdobeのFlashプレーヤーが拡張され、ビデオ再生やアニメーションなどの機能がサポートされるようになりました。 Microsoftが開発したSilverlightは、ストリーミングメディアとアニメーションのサポートを提供するために2007年にリリースされました。これは、基本的にMicrosoftのFlashの競合製品でした。
Webブラウザの穴を埋めるために他のプラグインも作成されました。 Unityプラグインは3Dグラフィックスのサポートを提供し、Google Voice and Videoプラグインは、Googleのハングアウトおよびトークサービスにシステムのマイクやウェブカメラへのアクセスを提供します。
Internet Explorer 6がひどく停滞する前の初期の頃でさえ、ブラウザプラグインは、ブラウザ自体にはなかった機能をWebブラウザに追加するために使用されていました。 Webを十分に長く利用している場合は、オンラインでビデオ再生ページにアクセスし、Windows Media Player、QuickTime、またはRealPlayerを使用してビデオを再生する選択肢が表示されることを覚えているでしょう。これらの3つの互換性のないプラグインはすべて、Webにビデオ再生を追加するさまざまな方法でした。ブラウザがビデオを再生するための組み込みの方法も、ビデオ再生のためのWeb全体の標準もありませんでした。最終的にはFlashで標準化されましたが、現在はFlashから離れています。
ブラウザプラグインが悪い理由
ブラウザプラグインは、Webにとって問題であることが証明されています。それらの最大の問題のいくつかを次に示します。
関連: Javaは安全ではなくひどいので、それを無効にする時が来ました。その方法は次のとおりです。
- セキュリティ :ブラウザプラグインは、ブラウザ自体よりも安全性が低いことが証明されています。 Java Web上で最大の攻撃ベクトルの一部です。これは、使用しているブラウザやオペレーティングシステムに関係なく、誰もが同じFlashまたはJavaプラグインを使用しているという事実によって悪化します。これは、プラグインへの攻撃がすべてのブラウザとオペレーティングシステムで機能する必要があることを意味します。
- サンドボックスなし :NPAPI(Netscapeプラグインアプリケーションプログラミングインターフェイス)またはActiveXを使用して記述された従来のブラウザプラグインはそうではないため、セキュリティの問題はさらに悪化します サンドボックス化 。ユーザーアカウント全体とそのオペレーティングシステムのアクセス許可に完全にアクセスできます。プラグインの穴から、オペレーティングシステム全体にアクセスできます。一方、ブラウザは、エスケープするのが難しいサンドボックスでWebページをレンダリングします。 Chromeの新しいPepperAPI(PPAPI)サンドボックスプラグイン。新しいバージョンのFlash for Chromeは、NPAPIの代わりにこのPepperAPIを使用します。
- クロスプラットフォームの問題 :プラグインは単一のベンダーによって作成されます。つまり、実装は1つだけであり、ベンダーがサポートするプラットフォームでのみ実行されます。たとえば、あなたがしたいとしましょう LinuxでNetflixを見る — MicrosoftはLinux用のSilverlightを提供していないため、サポートされている方法でこれを行うことはできません。または、iPadでいくつかのFlashゲームをプレイしたいとします。AdobeFlashはiOSで実行されないため、これも実行できません。どちらの場合も、Linux開発者またはApple開発者は、SilverlightまたはFlashの独自のサポートを作成することはできません。これは、さまざまな人が複数の実装を実装できるWeb標準のようなオープンスタンダードではありません。
- 安定 :プラグインもクラッシュの主な原因であり、特にプラグインのクラッシュによってWebブラウザ全体がダウンした場合はなおさらです。ありがたいことに、Chromeのサンドボックス化とFirefoxのプラグインの分離により、クラッシュするプラグインは最近ではクラッシュするだけです。ブラウザ開発者がこれらのクラッシュを修正する方法はありません。それらを修正するには、プラグインの開発者に依存する必要があります。プラグインがクラッシュした場合、別のバージョンのプラグインに切り替えることはできません。オプションは1つだけです。
セキュリティと、さまざまなモバイルプラットフォームやデスクトッププラットフォーム間でプラグインを適切に機能させるための闘いの間で、プラグインが支持されなくなっているのも不思議ではありません。また、これらはWebブラウザにとって外部オブジェクトです。コンテンツのレンダリングが異なり、標準のHTMLコードと同じようにWebページと統合することはできません。
ブラウザプラグインの置き換えとは
Webの初期の頃、プラグインは機能を並行して開発し、競合することを可能にしました—すべての異なるビデオ再生プラグインを目撃します。また、Webブラウザーの開発が停滞したときに、サードパーティが新しいWebページ機能を追加できるようにしました。
私たちは今、迅速なブラウザ開発とWeb標準のはるかに健康的な環境にいます。さまざまなWebブラウザー間で競争があり、Microsoftでさえ、これまでにない方法でWeb標準に準拠しようとしています。
関連: Webブラウザがまだできることを知らなかった10のこと
実装されている機能プラグインの多くは、組み込みのブラウザ機能の形で導入されています。 それらの多くはすでに実装されています 、一部はまだ開発中ですが。最も人気のあるプラグインに代わるものは次のとおりです。
- 閃光 :Flashは、ビデオの再生やアニメーションなど、さまざまな用途に使用されます。 YouTubeのようなサイトはFlashの代わりにより多くのHTML5ビデオを透過的に使用しているため、FlashはHTML5ビデオによるビデオ再生のためにすでに段階的に廃止されています。アニメーションに関しては、Flashがかつて必要だった場所に多くの新しいHTML5機能が追加されています。
- Java :プラグインはスイスチーズと同等のセキュリティであるため、Webページ上のJavaアプレットは安全でないことが証明されているため、Javaはすでに段階的に廃止されています。 Javaは基本的に、プログラム全体をWebページに埋め込む方法を提供しますが、これはうまく機能していません。
- Silverlight :MicrosoftはSilverlightの開発を終了します。これは、現時点ではいくつかのサイトでのビデオ再生にのみ使用されています。 Silverlightの最大のユーザーであるNetflixは、HTML5ビデオ再生に移行しています。
- Unity 3D :Unity 3Dプラグインを使用すると、3DゲームをWebページに埋め込むことができます。 WebGLのおかげで、プラグインなしでWebページの3Dグラフィックスが可能になりました。
- GoogleEarthプラグイン :GoogleのGoogleEarthプラグインはすでに置き換えられています。 WebGLを使用してGoogleマップで完全な3DGoogleEarthシーンを表示できます。
- Google Voice and Video :ハングアウトとGoogleトークの通話には、引き続きGoogleVoiceとビデオのプラグインが必要です。これは、プラグインを使用しないリアルタイムのオーディオおよびビデオ通信用のWebRTC標準に置き換えられます。
プラグイン機能がブラウザ自体に組み込まれることで、より安全で強力なWebが実現します。プラグインは今のところまだ必要ですが、もうすぐ出て行きます。かつては非常に便利でしたが、私たちはそれらを超えて進んでいます。
Flashプラグインはまだ広く使用されているため、しばらくの間使用されますが、他のすべてのプラグインは無関係の危機に瀕しています。 Flashをサポートしていないモバイルプラットフォームのおかげで、Flashでさえ関連性がますます低くなっています。これはほとんどのプラグイン開発者にとっては問題ありません—アドビはFlashではなくHTML5にエクスポートするツールを開発しました。オラクルはおそらく、非常に安全性の低いJavaプラグインを廃止してセキュリティ記録を汚すことをやめたいと考えており、マイクロソフトはもはやプッシュに関心がありません。 FlashのライバルとしてのSilverlight。