Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
02.05.2014
Размер:
384.51 Кб
Скачать

6.3.5.1. Введение

OLE является столь большой областью технологии, что имеет отношение не только к связыванию и внедрению объектов. Кроме технологий, включающих в себя связывание и внедрение объектов, OLE имеет прямое отношение к технологиям ActiveX, структурированной памяти, автоматизации и перетаскивания объектов. Все эти технологии базируются на программной технологии, названной Component Object Model или COM.

Что такое технология OLE? Это набор объектов, построенных поверх объектной модели СОМ, которая допускает коммуникацию в ходе процесса. Большая часть технологии связана с получением нескольких приложений, процессов, машин или операционных систем, общающихся друг с другом.

OLE - это не просто технология обмена данными между приложениями, OLE является ядром современной концепции документно-ориентированной среды. Поэтому давайте на технологию OLE посмотрим более широко, чем просто на способ обмена данными.

6.3.5.2. Понятие документно-ориентированной среды

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

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

Документно-ориентированная работа - это работа с набором приложений, каждое из которых выполняет отдельные функции, а не работа с одним огромным приложением, выполняющим все функции. С этой точки зрения можно считать, что документно-ориентированная среда - это еще один аспект структуризации программного обеспечения.

Важно, что в д-о подходе на первое место выходит документ, а не создавшее его приложение или ряд приложений. Документ - первичен, приложение - вторично.

Следующие технологии существуют для организации д-о работы.

  1. OLE фирмы Microsoft;

  2. OpenDoc - все, кроме Microsoft, т.е. Apple, IBM, Novell, Oracle, Xerox;

  3. CORBA - Common Object Request Broker Architecture Общая Архитектура Посредника Запросов между Объектами - IBM, HP, DEC, Sun.

Мы будем рассматривать технологию OLE.

В ДОС трудно было создать документ - текст с рисунками. Дело в том, что форматы данных в приложениях ДОС существенно различны. Кроме того, поскольку ДОС изначально проектировалась как однозадачная среда, не было необходимости взаимодействия между приложениями.

Попытки устранить этот недостаток привели к созданию интегрированных пакетов, например, Framework. Это пример типичной операционной среды, кстати сказать. В нем можно было многое делать, не выходя из пакета - создать текст, вести базу данных, работать с файлами, печатать. Но все равно, отдельные компоненты пакета были хуже, чем самостоятельные приложения, выполняющие соответствующие функции. Сказывалась, видимо, квалификация узкоспециализированных разработчиков.

Следующим шагом на пути д-о работы является понятие Clipboard. Windows как многозадачная среда сразу же проектировалась с высокоэффективными средствами обмена данными между приложениями. Достоинство Clipboard состоит в том, что исчезла проблема преобразования данных при передаче их из одного приложения в другое. Преобразование происходит незаметно для пользователя на основе ряда установленных стандартов. Приложение автоматически контролирует наличие данных в буфере: данные есть - функция Paste - активна, данных нет - функция Paste - пассивна.

---------------------------

Copy |Визуальное представление | Paste

-------------| фрагмента |-------------

| ---------------------------- |

---------------------- ---------------------

| Приложение-источник| |Приложение-приемник|

| ------------ | | -----------------|

| | Фрагмент | | | |Визуальное ||

| ------------ | | |представление ||

| | | |фрагмента ||

| | | -----------------|

---------------------- ---------------------

Недостатком является невозможность накопления данных; при появлении нового блока данных, старые теряются, а также ограниченность размера блока, т.к. Clipboard - это буфер в ОЗУ.

Следующим шагом развития технологии обмена данными стала технология DDE. Фрагмент, который мы хотим перенести в другое приложение, должен быть частью файла, который называется документом-источником. Фрагмент помещается в Clipboard командой Copy, а считывается не командой Paste, a командой PasteLink.

---------------------------

Copy |Визуальное представление | Paste Link

-------------| фрагмента |-------------

| ---------------------------- |

---------------------- ---------------------

| Приложение-источник| |Приложение-приемник|

| ------------ | | -----------------|

| | Фрагмент | | | |Визуальное ||

| ------------ | | |представление ||

| | | |фрагмента ||

| | | -----------------|

---------------------- ---------------------

^ |

| ссылка на оригинал |

-------------------------------------------------------

Теперь любые изменения в фрагменте документа-источника будут отражаться на фрагменте, помещенном в приложение-приемник. Т.о. фрагмент сохранил связь с оригиналом, в документе, куда вставлен фрагмент, есть ссылка на оригинал. При этом связь сохраняется и после закрытия приложений.

Технология DDE не получила широкого распространения. Пользователи чаще используют обычный Clipboard. Для программистов протоколы DDE тоже очень сложны. Вы это видели. DDE целесообразно использовать для обмена достаточно простыми структурами данных, а именно, текстовыми строками. Для более сложных структур и был создан протокол OLE.

Часто производится сравнение протоколов DDE и OLE и спрашивается, когда какой протокол необходимо применять. Протокол DDE целесообразно использовать для обмена простыми типами данных, например, текстовыми строками, в то время как протокол OLE способен поддерживать обмен существенно более сложной информацией, такой как звуки, изображения.

Соседние файлы в папке Шпоры по СПО