русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Компонентная модель объектов, внедрение и связывание


Дата добавления: 2015-06-12; просмотров: 1203; Нарушение авторских прав


Компонентная модель объектов (COM – Component Object Model), являющаяся базовым элементом технологии ActiveX фирмы Microsoft, позволяет пользователям создавать «составные» документы, а разработчикам – «составные» приложения. В составных документах могут содержаться материалы, созданные с помощью различных приложений, а в составных приложениях – различные объекты (из стандартных библиотек или пользовательские), помогающие создать такие материалы. Например, приложение, созданное на основе Access, может использовать объекты Excel в качестве объектов, выполняющих финансовые расчеты.

Automation является одним из наиболее важных средств ActiveX. Это средство позволяет применять в приложении подпрограммы, управляющие объектами в другом приложении. Более ранняя технология организации взаимодействия двух приложении называлась DDE (Dynamic Data Exchange). При использовании DDE приложения вступали для обмена информацией в диалог. Но при таком способе организации взаимодействия приложения работали медленно. Automation является значительно более быстрым и легким в использовании средством.

Ключевым понятием, лежащим в основе всех интегрируемых приложений, является служба (сервис). Приложение, поддерживающее Automation (OLE Automation), можно рассматривать как набор служб, которыми это приложение может пользоваться. «Специализация» продуктов семейства Microsoft Office такова:

– Access – службы базы данных (СУБД), просмотр и ввод данных, формы, отчеты;

– Excel – службы расчетов, просмотра, финансового анализа и представления данных;

– Word – службы текстового процессора и настольной издательской системы, создание отчетов;

– PowerPoint – службы представления информации, презентации;

– Office Binder – службы хранения и использования данных, интеграции документов;

– Microsoft Outlook – службы управления информацией, электронная почта, управление заданиями, база контактов, планирование групповой работы;



– Project – управление проектами;

– Microsoft Internet Explorer – службы просмотра Web.

– Ценой удобства доступа к такому широкому набору служб является производительность. Более высокопроизводительные приложения можно построить с использованием объектов, написанных на языках типа C/C++.

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

Некоторые приложения Microsoft Office могут быть только серверами Automation, другие могут выступать и в роли клиентов. Степень поддержки приложениями MS Office Automation показана в табл. 6.

Технически объект в программировании объединяет в себе данные с функциями, использующими эти данные, т.е. в объекте данные объединяются с механизмами доступа к ним. Microsoft расширило понятие объекта до понятия «программируемого объекта». Поведение таких объектов изменяется с помощью Automation. Это позволяет конструировать приложения, управляющие другими объектами-приложениями.

COM определяет интерфейс, позволяющий объектам, написанным разными разработчиками, на разных языках программирования, работать друг с другом. Общий язык программирования для всех продуктов Microsoft – VBA. Он используется для программного управления объектами Automation.

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

OLE (Object Linking and Embedding – связывание и внедрение объектов) как часть спецификации COM, предоставляет пользователям возможность создания составных документов путем сопоставления объекту двух типов данных: собственно данных объекта и данных для его представления. С помощью OLE пользователи могут связывать или внедрять объекты других приложений.

Когда объекты связываются с файлом, они добавляют в него данные для своего представления и указатель на исходный файл объекта. При обновлении исходного файла обновляется и его представление в составном документе. При изменении расположения исходного файла относительно составного документа связи разрушаются.

При внедрении объектов в файл в него вносятся и данные о представлении объекта, и данные, необходимые для его редактирования внутри составного документа. Таким образом, все данные, созданные разными приложениями, содержатся в одном документе (файле). Это приводит к «раздуванию» файла составного документа.

Спецификация COM включает в себя часть, называемую Automation, которая позволяет выполнять разработчикам следующие действия:

– управлять с помощью программного кода объектами, созданными другими приложениями;

– создавать и использовать другие пользовательские объекты, поддерживающие спецификацию COM;

– управлять с помощью программного кода связыванием и внедрением объектов.

Приложения, которые управляют доступными объектами других приложений, называются контроллерами Automation (или клиентами Automation), а приложения, которые предоставляют такие объекты в качестве «строительных блоков», – серверами Automation.

Для создания пользовательских объектов используются языки программирования (например, С/С++), а для использования этих объектов, предоставляемых прикладными программами в распоряжение других программ, можно воспользоваться любым языком программирования, обеспечивающим поддержку контроллеров Automation. При проектировании интегрированного приложения можно выбрать одну из трех моделей:

Модель центрального приложения – одно из приложений Office управляет остальными. Разработчики пишут код только для управляющего приложения.

Модель исполняемого файла – все компоненты приложений Office управляются из самостоятельного EXE-файла. Кроме его программирования, разработчики могут писать код и для приложений подключаемых компонентов. «Главное» приложение может быть написано на любом языке программирования (например, Visual Basic).

Модель распределения ролей – каждое приложение Office и исполняемый EXE-файл разработчиков выполняют свою часть работы, код исполняется внутри «родного» приложения. При необходимости приложение само активизирует нужный компонент.



<== предыдущая лекция | следующая лекция ==>
Технология ActiveX | Создание объектов Automation


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.133 сек.