Download presentation
Presentation is loading. Please wait.
1
COM コンポーネント・オブジェクト・モデル
2
COM(Component Object Model)
マイクロソフトが提唱する ソフトウェアの再利用を目的とした技術のこと ソフトウェア間での通信に用いられる 特定の開発言語に依存せず、C言語やJavaなど、 様々な言語により開発を行うことができる COMという用語はソフトウェア開発の世界では OLE(Object Linking and Embedding) ActiveX DCOM をカバーする包括的な用語 DirectXもCOMである
3
概念図 OLE ActiveX COM .Net Framework
4
OLE(Object Linking and Embedding)
Windowsにおいて、アプリケーションソフト間でデータを 転送・共有するための仕組み OLEを使うことによって、あるアプリケーションで、 別のアプリケーションで作成した機能を使うことができる
5
ActiveX マイクロソフトが開発するインターネットに関するソフト ウェアコンポーネントやその技術を示す用語
マイクロソフトがオブジェクトのやりとりを行う 仕組みである (OLE)からインターネットに関する 技術を分離させたものがActiveXにあたる ActiveXコントロール例としては Adobe Flash Shockwave QuickTime などがある
6
DCOM COM仕様にしたがって作成されたソフトウェア部品 (「COMオブジェクト」と呼ばれる)同士が ネットワークを通じて通信を行い、 データの交換や処理依頼のやり取りを行なうこと
7
.Net Framework Windowsアプリケーションだけでなく XML、Webサービスやウェブアプリケーションなど Webベースのアプリケーションを取り入れた環境 共通言語基盤(CLI) が標準化されている VB C# C++/CLI は.Net Frameworkを利用しているので 相互互換性を持つ CLIのマイクロソフトの実装を 共通言語ランタイム (CLR)と呼ぶ
8
COMの実態 実態はインターフェースと実装を分離したDLL (COMは利用形態の規範でしかない)
DLL (実行時リンク)であるため、 DLLのバージョンが上がったとしても DLLを差し替えるだけでアプリケーションを リビルドすることなく実装を差し替えることが可能となる (プラグインなどの利用)
9
COMのルール すべてのインターフェースは IUnknownインターフェースを継承している
この世でただ一つという保証があるGUIDを 振らなければならない GUIDには、 IID(インターフェースID) CLSID(クラスID) の2タイプがある GUIDによりQuery InterfaceでCOMオブジェクトを取得できる COMコンポーネントを利用するためには GUIDをレジストリに登録する必要がある (純粋なDLLと比べて、利用に付属LIBが不要な点が優位点) GUIDはVisual Studio付属の GUIDGEN.exeによって生成する
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.