Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы и ответы к экзамену.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

2. Структура, состав и назначение подсистем типовой системы программирования (Visual Studio или Delphi).

Система программирования представляет собой совокупность средств разработки программ (языки программирования, текстовые редакторы, трансляторы, редакторы связей, библиотеки подпрограмм, утилиты и обслуживающие программы), обеспечивающих автоматизацию составления и отладки программ, подготовку соответствующей документации. Как правило, включает не эталонный вариант языка, а его версию, содержащую определенные упрощения иди расширения. Некоторые системы программирования могут поддерживать разработку программ на нескольких языках. Наиболее известные системы программирования для персональных компьютеров: Visual Studio, созданная фирмой Microsoft, поддерживающая языки программирования Бейсик, Java, C++; Delphi.

Типовая система программирования состоит из следующих компонент:

  • язык программирования – семантическая система описания алгоритмов или иных действий по обработке информации;

  • транслятор (интерпретатор или компилятор) – обработчик языка программирования, переводящий символические директивы на язык машинных кодов;

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

  • средства трассировки (отладки), текстовый редактор и ряд других служебных утилит.

3. Взаимодействие приложений — реализация с помощью COM, ActiveX, обмена сообщениями (основные принципы). Причины возникновения большого числа таких технологий (в т.ч. LPC, DPC, APC) и имеющиеся проблемы. Краткая характеристика известных технологий организации взаимодействия ПО.

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

COM - это не язык программирования, а подход (спецификация) к созданию программ, обеспечивающий взаимодействие программ любых типов. Компоненты COM объединяются друг с другом для создания приложений или систем компонентов. Компоненты можно менять во время выполнения, без перекомпиляции или перекомпоновки приложения. COM - это основа, на которой построены такие технологии Microsoft, как ActiveX, DirectX и OLE.

Таким образом, ключевое слово при использовании COM - компонент. К компонентам обычно предъявляются следующие требования:

  1. Компонент должен скрывать используемый язык программирования.

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

  3. Должна быть возможность модернизировать компоненты, не затрагивая уже существующих пользователей. Новые версии компонента должны работать как со старыми, так и с новыми клиентами.

  4. Компоненты должны перемещаться по сети. Необходимо, чтобы компонент и использующая его программа могли выполняться внутри одного процесса, в разных процессах и на разных машинах.

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

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

Как и большинство технологий, обмен сообщениями характеризуется несколькими базовыми концепциями (шаблонами):

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

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

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

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

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

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

Появление подобных технологий (в т.ч. LPC(local procedure call), DPC(англ. Deferred procedure call — отложенный вызов процедуры) , APC(asynchronous procedure call)) обусловлено развитием многозадачных ОС и многопоточных процессов.