5

XPCOMを理解するのに苦労しています。COMとどう違うのですか?クロスプラットフォームとは何ですか?

これは、いくつかのジョブを実行するために使用できる一連のライブラリを備えたフレームワークですか?

また、コンポーネントオブジェクトモデルは、すべての機能がコンポーネントに実装されていることを意味するので、詳細な実装を知らなくても使用できますか?

誰かが私がこれを理解するのを手伝ってくれませんか?ありがとう、チャン。

4

1 に答える 1

9

XPCOMを理解するのに苦労しています。COMとどう違うのですか?

XPCOMは、Mozilla独自のクロスプラットフォーム(したがってXPビット)バージョンのCOMです。

クロスプラットフォームとは何ですか?

これは、Mozillaオープンソースプロジェクトへの貢献者によって多くのプラットフォームに移植されたライブラリに実装されています。ビルドするか、任意のプラットフォーム用のバイナリをダウンロードできます。まだサポートされていないプラットフォームで使用する可能性が非常に低い場合は、自分で移植するのが簡単です。

また、コンポーネントオブジェクトモデルは、すべての機能がコンポーネントに実装されていることを意味するので、詳細な実装を知らなくても使用できますか?

はい、スポットします。このアイデアは、特定のコンポーネントが実装されている言語の特別な知識を必要とせずに、さまざまなコンポーネントが通信および対話できるようにする言語に依存しないフレームワークです。したがって、JavaScriptコードはたとえばC++コードを呼び出すことができます。

これは、 IDL(またはXPCOMの場合はXPIDL )と呼ばれる言語を使用して、明確に定義されたインターフェイスを公開するコンポーネントによって実現されます。これらのインターフェースは、サポートされている各言語のマッピングで明確に定義された型を利用します。IUnknownすべてのインターフェースは、参照カウントと型推論( COMおよびnsISupportsXPCOMで呼び出される)の標準メソッドを提供する共通のベースインターフェースを継承します。

誰かが私がこれを理解するのを手伝ってくれませんか?

オンラインリソースに関しては、MSDN(COM用)MDC(XPCOM用)の両方に専用の領域があります。COMの動機とその理由を本当に理解したい場合は、DonBoxEssentialCOMを入手することをお勧めします。もちろん、回答が必要な特定の質問がある場合は、いつでもここに来て質問することができます。:)

于 2010-10-18T10:40:56.007 に答える