5

Microsoft の ActiveX と Google の Native Client を使用すると、ブラウザ内でコンパイルされたネイティブ コードを実行する Web アプリケーションを構築できます。異なるブラウザーやオペレーティング システムで動作するという事実に加えて、両者の技術的な違いは何ですか?

4

2 に答える 2

7

これはあまり良い比較ではありません。NPAPI と Native Client は、おそらく比較するのに適しています。ActiveX は IE でのみ動作し、NPAPi は他のブラウザー (Chrome を含む) で動作します。

Native Client は、特定の種類の操作を使用できないようにし、サンドボックスなどを提供する特別なコンパイラによってコンパイルされたコードを実行します。これは、ネイティブ コードを記述できるようにすることを目的としていますが、ブラウザが既に従っているセキュリティ制限の多くを強制します。可能なことについては、使用したいブラウザーで動作させることができる限り、それは素晴らしいことです。現在、Google Chrome でサポートされていますが、他のブラウザーで確実に動作するとは聞いていません。

逆に、NPAPI または ActiveX (両方のタイプを同時にターゲットできるようにするFireBreathを参照) を使用すると、ネイティブ コードを記述し、通常のアプリケーションで実行できることを多かれ少なかれ実行できます (UAC が有効になっている Vista/Win7 上の IE を除く)。低整合性モードで)。

NaCl の最大の欠点は、おそらくハードウェアにアクセスできないことです。サンドボックス化されているため、実行できるネットワーク機能が少し制限され、インターフェイスできるデバイスが大幅に制限されます。

NaCl に関する FAQ を読むことを強くお勧めします: http://code.google.com/chrome/nativeclient/faq.html

私にとって、NaCl は、 Google Chrome だけが完全かつ公式にサポートされているように見えるという単純な理由で、プラグインを必要とする私のプロジェクトの実行可能なオプションではありません.

于 2011-10-31T01:51:12.410 に答える