COM學習筆記

首先了解以下幾個概念:

組件就是對象(或者說是類),它與類的區別就在於類是以源碼形式存在的;而組件是以二進制可執行碼存在的。

組件模型:定義組件的製作方法,運行方式,以及相互作用機制。

COM是一個基於面向對象的組件模型,不是一種面嚮對象語言,它也不指定一個應用程序如何構造,它是一種標準,(除了指定二進制組件標準,COM還定義一些基本的接口以提供一些所有基於COM組件的技術所公有的函數。此外,COM還提供一些所有組件所需要的API函數。)它指明一種組件模型和使組件之間能夠相互操作的編程需求。COM/DCOM組件可以運行在單一進程、不同進程、甚至是遠端機器。它的結果是一個組件。

COM(Component Object Model)是開發面向對象組件的一種規範,是微軟用來開發組件的一種規範。是一種平臺獨立的、分佈式、面向對象的系統,用於創建可互操作的二進制軟件組件。COM不是一種面嚮對象語言,而是一種標準。

COM/DCOM之所以被認爲是一種二進制標準,是因爲它是一種在應用程序被編譯成二進制機器碼之後才起作用的標準。

COM定義了COM組件的本質特徵。一個軟件組件由一組數據以及管理這些數據的函數構成。一個COM/DCOM組件是這樣的一種軟件組件,它專門通過一組或多組相關的函數存取組件數據。這些函數集合稱爲接口,而接口的函數稱爲方法。對COM/DCOM來說,它需要的唯一的調用接口方法的途徑就是指向接口的指針。COM組件通過接口指針調用接口的方法。

編譯好的COM/DCOM組件是不能修改的,要增加新的功能只能由開發商對組件源碼進行修改、更新,然後重新編譯生成新的COM/DCOM組件。 

一般程序設計中的類是通過虛方法來實現多態的,而COM對象是通過接口來實現多態的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章