Главная » Просмотр файлов » Ревунков Г.И. - Методические указания к лабораторному практикуму по курсу «Базы данных»

Ревунков Г.И. - Методические указания к лабораторному практикуму по курсу «Базы данных» (1075664), страница 12

Файл №1075664 Ревунков Г.И. - Методические указания к лабораторному практикуму по курсу «Базы данных» (Ревунков Г.И. - Методические указания к лабораторному практикуму по курсу «Базы данных») 12 страницаРевунков Г.И. - Методические указания к лабораторному практикуму по курсу «Базы данных» (1075664) страница 122018-01-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 12)

• TDdeClientConv - устанавливает связь с сервером.

• TDdeClientItem - конкретный объект, содержимое которого принимается или передается за один сеанс связи с сервером.

• TDdeServerConv - сервер.

• TDdeServerItem - конкретный объект сервера , подлежащий обмену.

Для посылки данных серверной программе используется метод:

function PokeData (Item: string; Data: PChar): Boolean;

Для приема данных от программы сервера используют метод:

function RequestData ( const Item: string): PChar;

В качестве недостатков технологии DDE отмечается отсутствие единого подхода к работе с различными серверами. Порядок обращения к данным сервера индивидуален и конкретен и находится в его документации (например, порядок обращения к ячейкам электронной таблицы).

1.2.10.2. ТЕХНОЛОГИЯ OLE

Технология OLE (Object Linking and Embedding) реализует связывание и внедрение объектов.

Типовой пример использования этой технологии - добавление рисунка в документ Word 97 (рис. 1.50):

Вставка  РисунокИз файлаСвязать с файломДобавить.

Рис.1.50. Пример технологии OLE.

Объединение двух объектов, т.е. реализация действия "вставка" рисунка в документ Word 97, может быть выполнена двумя вариантами:

• Вариант "связывание".В документ добавляется только ссылка на рисунок, указывающая его местоположение на диске и формат. Внешне в технологии ОLE это реализуется установкой флажка "Связать с файлом" в диалоговом окне выбора рисунка (рис. 1.50). Если в дальнейшем этот файл удалить, то программа не сможет ничего отобразить. Если же в исходный файл будут внесены изменения, то они отобразятся и в документе. Объем документа увеличивается незначительно, но требуется следить за состоянием файла рисунка.

• Вариант "внедрение". В документ вставляется сам рисунок (копируется). Внешне в технологии ОLE это реализуется сбросом флажка "Связать с файлом" в диалоговом окне выбора рисунка (рис. 1.50). Если теперь удалить или изменить исходный файл, то рисунок в документе останентся без изменений. Объем документа существенно увеличивается, так как изображение находится в документе.

Технология ОLE расширяет возможности технологии DDE. Вводится понятие объекта, обладающего свойствами и методами, к которым можно обращаться. Работой приложений можно управлять программно. Это называется "автоматизация ОLE" (OLE Automation). При этом и управляющее и управляемое приложения должны поддерживать технологию ОLE.

В качестве недостатков технологии OLE отмечается отсутствие общего программного интерфейса и необходимость ознакомления по документации с описанием доступных средств и методов обрабатываемых объектов. Эти проблемы были сняты в технологии СOM.

Объект, который встраивается, называется контейнером OLE (OLE Container) В нашем примере это рисунок.

В IDE Delphi 5 на странице System имеется компонент TOleContainer для поддержки технологии OLE:

1.2.10.3. ДИНАМИЧЕСКИ ПОДКЛЮЧАЕМЫЕ БИБЛИОТЕКИ DLL

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

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

В IDE Delphi для работы с библиотеками DLL применяются следующие команды и действия.

I. Создание библиотеки DLL. Выполняются команды File | New . В открывшемся окне New Items выбирается компонент DLL. В результате создается пустая заготовка библиотеки. Исходный текст модуля библиотеки начинается со слова library. В текст модуля библиотеки как обычно вносится описание функции. В конец модуля добавляется ключевое слово exports с указанием имени этой экспортируемой функции (или списка экспортируемых функций, которые должны быть доступны другим приложениям):

library Project1;

uses

SysUtils,

Classes;

{$R *.RES}

function Multiply (X1, X2: integer): integer;

begin

Y:=X1*X2;

end;

exports Multiply;

begin

end.

Модуль должен быть откомпилирован. Его файл должен будет присутствовать в том же каталоге, в котором будет создаваться ЕХЕ-файл приложения, которое будет импортировать эту функцию.

II. Вызов библиотеки DLL. В создаваемом новом проекте, который будет использовать библиотеку DLL, в разделе interface необходимо описать импортируемую функцию с ключевым словом external, в вкотором в апострофах указывается имя файла модуля библиотеки DLL, например:

function Multiply (X1, X2: integer): integer;

external 'Project1.dll';

Директива external указывает компилятору, что исходный текст находится в файле Project1.dll.

Следует помнить, что сама DLL не выполняется, а предоставляет в распоряжение приложения свой програмный код.

1.2.10.4. РАБОТА С ПОТОКАМИ

Речь идет об "одновременном" выполнении нескольких нескольких программ или функций в одной программе. Реально одновременное выполнение возможно при наличии нескольких процессоров. Однако операционная система Windows имитирует одновременнойсть выполнения программ, используя идею так называемого режима разделения времени. Общий циклический квант времени работы компьютера, например сто миллисекунд, разбивается на несколько более мелких квантов. Затем каждой программе по очереди, циклически, предоставляется для работы свой небольшой квант времени, например, в несколько миллисекунд. Например, сначала запускается PROG1. Затем, когда она исчерпала свой квант времени, она прерывается и управление передается PROG2. Затем PROG3 и т.д. После последней программы управление передается снова PROG1 и далее процесс циклически повторяется. Обычно общий квант дробится по числу выполняемых программ. Это позволяет реализовать приоритетность выполнения, увеличивая или уменьшая кванты времени соответствующих программ.

Однако при таком подходе часть компьютерного времени тратится на обеспечение управления процессом распределения времени между программами. Есть рекомендации (корпорации Inprise ) не создавать в программе более 16 процессов при работе на однопроцессорном компьютере [ Л16 ].

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

Потоки, как и обычные программы, могут также выполняться псевдопараллельно.

Под многозадачностью обычно понимают возможность параллельной работы нескольких программ. А под многопоточностью - возможность параллельной работы нескольких фрагментов программы (потоков).

В IDE Delphi для создания дополнительного потока используется компонент TThread Object (его можно найти в репозитории). После выбора этого модуля запрашивается имя класса, который будет дочерним для TThread. После этого раскрывается модуль с заготовкой для дочернего класса:

unit Unit1;

interface

uses

Classes;

type

MyThread = class(TThread)

private

{ Private declarations }

protected

procedure Execute; override;

end;

implementation

{ ...

... }

procedure MyThread.Execute;

begin

{ В это место необходимо поместить код потока }

end;

end.

При программировании потока нельзя использовать методы и свойства визуальных компонентов, которые могут приводить к изменению внешнего вида программы. Однако если это требуется, то поток должен обращаться к специальному методу Synchronize.

1.2.10.5. ТЕХНОЛОГИЯ СОМ

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

Объект СОМ представляет собой законченный объект со свойствами и методами, который можно легко встраивать в приложения или распространять как продукт. Одно из наиболее известных расширений технологии СОМ - это компоненты АсtiveX. На основе технологии СОМ создаются серверы автоматизации, активные серверные страницы с расширением АSP (Active Server Pages ).

Для создания объектов, которые должны функционировать в сети на разных компьютерах, разработана распределенная технология СОМ - DCOM (Distributed COM).

Составные части технологии СОМ.

I. Интерфейс СОМ. Описание методов и свойств объекта СОМ. Последний может содержать несколько интерфейсов.

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

Каждый объект СОМ имеет свой IID - Interface Identifier. IID строится на основе уникального глобального идентификатора GUID - Globally Unique Identifier. GUID обеспечивает уникальность идентификатора интерфейса СОМ.

Каждый объект СОМ содержит базовый интерфейс IUnknown, который позволяет узнать какие интерфейсы СОМ доступны клиенту СОМ. Все они наследуют характеристики IUnknown. Интерфейс IUnknown содержит метов QueryInterface, который возвращает ссылки на другие доступные интерфейсы. Название каждого интерфейса должно начинаться с заглавной буквы I (Interface).

II. Сервер СОМ. Законченный модуль (EXE или DLL), в котором хранится программный код объекта СОМ (возможно - нескольких). Сервер СОМ создает объект, который занимается созданием и загрузкой экземпляров требуемых объектов СОМ. Экземпляр выполняет конкретные действия своего интерфейса, затребованные в запросе клиента СОМ.

В IDE Delphi 5 для создания сервера СОМ необходимо выполнить:

File | New | страница ActiveX

и на странице ActiveX выбрать значок ActiveX Library. Это библиотека объектов ActiveX, которая представляет собой сервер СОМ, хранящий набор объектов СОМ.

Теперь в эту библиотеку необходимо добавить объект СОМ. Выполняются те же команды и выбирается значок СОМ Object. В появившемся окне задаются характеристики объекта СОМ.

После создания серверного объекта СОМ он регистрируется в Windows. Для этого вызывается окно редактирования интерфейсов сервера СОМ - Project.tlb (например, командой Viev | Type Library ), в котором надо щелкнуть на пиктограмке Register Type Library. Происходит компиляция. Создается библиотека DLL, содержащая сервер СОМ и одновременно происходит его регистрация в операционной системе.

III. Клиент СОМ. Программный код, в котором происходит обращение к интерфейсу СОМ с запросом на выполнение определенных услуг сервера СОМ.

Клиентские программы могут обращаться к серверу СОМ после того, как он будет зарегистрирован.

1.2.10.6. ТЕХНОЛОГИЯ СОRBA

Технология СОRBA (Common Object Request Broker Architecture - общая архитектура брокеров объектных запросов) позволяет создавать распределенные приложения, работающие в сети и способные выполняться под управлением разных операционных систем. Технология организует совместную работу объектов, предоставляющих другим программам свои интерфейсы. Эти интерфейсы характеризуют возможности объектов.

Отличительная особенность технологии СОRBA заключается в обеспечении совместной работы объектов, созданных для разных систем.

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

• организовать распределенную работу, написанных на разных языках;

• отслеживать и синхронизировать работу программ;

• перезапускать в случае сбоев;

• получать и анализировать требования от клиентских программ;

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

• дожидаться результата выполнения требования и возвращать его клиентской программе, установившей связь с серверным объектом СОRBA и др.

С помощью IDE Delphi 5 можно создавать объекты СОRBA только для операционных систем Windows.

1.2.11. МНОГОУРОВНЕВЫЕ ПРИЛОЖЕНИЯ

В IDE Delphi 5 реализованы следующие аспекты многоуровневых приложений:

• Технология MIDAS.

• Многоуровневые приложения с доступом через сервер MTS.

Характеристики

Тип файла
Документ
Размер
830 Kb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6499
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее