Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Работа с OLE и COM.doc
Скачиваний:
5
Добавлен:
19.09.2019
Размер:
90.11 Кб
Скачать

Технология com

COM (англ. Component Object Model) – объектная модель компонентов. Это технологический стандарт от компании Microsoft, предназначенный для создания программного обеспечения на основе взаимодействующих распределённых компонентов, каждый из которых может использоваться во многих программах одновременно. Технология воплощает в себе идеи полиморфизма и инкапсуляции объектно-ориентированного программирования. Технология COM в принципе является универсальной и платформо-независимой, но закрепилась в основном на операционных системах семейства Windows.

На основе COM также было создано множество других стандартов: OLE Automation, ActiveX, DCOM, COM+.

История COM

Стандарт COM был разработан в 1993 году компанией Майкрософт как основа для развития технологии OLE. Стандарт COM должен был унифицировать процесс создания, внедрения и связывания внедряемых объектов, а также стандартизировать разработку приложений, использующих внедряемые объекты.

Принципы работы COM

Основным понятием, которым оперирует технология COM, является COM-компонент. Программы, построенные на технологии COM, фактически не являются автономными программами, а представляют собой набор взаимодействующих между собой COM-компонентов. Каждый компонент имеет уникальный идентификатор (GUID) и может одновременно использоваться многими программами. Компонент взаимодействует с другими программами через COM-интерфейсы – наборы абстрактных функций и свойств. Каждый COM-компонент должен, как минимум, поддерживать стандартный интерфейс «IUnknown», который предоставляет базовые средства для работы с компонентом.

Развитие COM

DCOM

Выпущенная в 1996 году технология DCOM (англ. Distributed COM — распределённая COM) является развитием COM. DCOM позволяет COM-компонентам взаимодействовать друг с другом по сети. Главным конкурентом DCOM является другая известная распределённая технология — CORBA.

.NET и будущее COM

В 2002 году была официально выпущена платформа Microsoft .NET, которая на сегодняшний день объявлена Майкрософт рекомендуемой основой для создания приложений и компонентов под Windows. По этой причине в .NET включены и средства, позволяющие обращаться к компонентам COM из приложений .NET, и наоборот. По словам представителей Майкрософт, COM (точнее, COM+) и .NET являются отлично взаимодополняющими технологиями. Также заявлено, что Windows Vista построена с использованием технологий .NET и COM+ (объединяет компоненты в так называемые приложения COM+, что упрощает обслуживание компонентов. Основными направлениями COM+ является безопасность и производительность).

Достоинства применения com:

  • компоненты могут находиться в любом месте на ЖД, включая удаленное расположение (сеть), они помещаются в DLL и в исполняемые EXE – модули;

  • компоненты не нужно перекомпилировать при изменении кода программы, которая их использует (в отличие от классического модуля);

  • один и тот же компонент можно одновременно использовать множеством приложений;

  • с использованием COM можно писать распределенные приложения, которые используют суммарную вычислительную мощность нескольких компьютеров;

  • компоненты могут использоваться любым языком программирования, т.к. их код представляет собой двоичный код с описанием интерфейсов (интерфейс обозначает статику взаимодействия, т.е. что именно, в каком формате должен предоставлять объект; протокол обозначает динамику взаимодействия, т.е. чем именно и в какой последовательности должны обмениваться взаимодействующие объекты);