Файл: Технология CORBA (Использование технологии CORBA).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 12.03.2024

Просмотров: 28

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Содержание:

ВВЕДЕНИЕ

CORBA (Common Object Request Broker Architecture - общая архитектура брокера объектных запросов) – это технология разработки распределенных приложений, ориентированная на интеграцию распределенных изолированных систем. В начале 1990-х гг. ночным кошмаром были проблемы обеспечения возможности общения программ, выполняемых на разных машинах, особенно, если использовались разные аппаратные средства, операционные системы и языки программирования: либо программисты использовали сокеты и сами реализовывали весь стек протоколов, либо их программы вовсе не взаимодействовали. (Другие ранние средства промежуточного программного обеспечения были ограничены средой C и Unix и не подходили для использования в неоднородных средах.) Для решения данной проблемы в 1989 г. был создан консорциум OMG (Object Management Group), основной задачей которого стала разработка и продвижение объектно-ориентированных технологий и стандартов. Это некоммерческое объединение, разрабатывающее стандарты для создания корпоративных платформо-независимых приложений.

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

CORBA является концепцией, а не ее реализацией. Когда мы говорим "COM", то понимаем под этим скорее набор конкретных средств – элементов операционной системы, библиотек, утилит и т.п., являющихся составной частью того, что называется Microsoft Windows. Под термином "CORBA" понимается именно сложная и развитая концепция, сформулированная на уровне специального языка описаний – IDL.

Под "стандартом" применительно к CORBA понимается то, что официально утверждено консорциумом OMG. Надо сказать, что это очень высокий уровень "легитимности", так как авторитет OMG в компьютерном мире чрезвычайно высок. OMG представляет собой некоммерческую организацию, являющуюся содружеством разработчиков программного обеспечения и его потребителей, объединивших свои усилия для создания спецификаций этой технологии. В настоящий момент в OMG состоит более 800 членов, включая всех сколько-нибудь серьезных производителей программного обеспечения (и даже c недавнего времени Microsoft).


Объекты CORBA можно рассматривать как экземпляры (instances) некоторого метатипа, причем и метатип, и сами объекты существуют вне связи с конкретной программой на конкретном языке. Этот метатип в CORBA называется «интерфейсом».

Цель работы рассмотреть технологию CORBA

Предмет работы интерфейс компьютера.

Объект работы технология CORBA

Задачи работы:

Рассмотрим общие понятие о технологии CORBA;

Изучим особенности проектирования технологии CORBA.

Структурно работа состоит из трех глав, включает введение, заключение и список литературы

ГЛАВА 1. ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ CORBA

1.1. История CORBA

История CORBA начинается в октябре 1991 года, когда был представлен первый стандарт CORBA 1.0 консорциумом OMG. Object Management Group это открытая независимая организация международного масштаба, которую основали в 1981 г. одиннадцать компаний с целью создания общей среды для разработки объектно-­ориентированных приложений через разработку рекомендаций и детали­зированных спецификаций для объектно-ориентированного управления процессами.

Первые версии стандарта COREA (Component Object Request Enterprise Architecture) включали в себя базовые определения объектной модели CORBA, языка IDL, API, для динамического управления вызова объектов и репозитория интерфейсов, а также концепцию базового адап­тера объектов (BOA, Basic Object Adapter) посредником между объек­том и ORB. Единственным языком официально поддерживаемым пер­выми версиями стандарта стал язык программирования C. В 19972001 гг. были добавлены поддержки языков Cobol, Ada, Java. Кроме того бы­ли включены поддержка взаимодействия с DCOM, служба сообщений, минимальный стандарт CORBA, система CORBA реального времени и ряд других служб.[6]

В 1997 г. консорциум OMG опубликовал спецификацию CORBA 2.0. В ней определялись стандартный протокол и отображение для языка C++, а в 1998 г. было определено отображение для Java. В результате разработчики получили инструментальное средство, позволяющее им относительно легко создавать неоднородные распределенные приложения. CORBA быстро завоевала популярность, и с использованием этой технологии был создан ряд критически важных приложений

Наибольшая популярность технологии CORBA пришлась на конец 90-х начало 2000-х гг. CORBA, являясь спецификацией, предоставляет описание для реализации конкретных продуктов.


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

Существуют ли эффективные способы решения этой проблемы? Чтобы понять, что такое межпрограммный интерфейс, каков принцип его работы, сначала обозначим, что такое интерфейс. Интерфейс – это не что иное как средство, при помощи которого пользователь может взаимодействовать с программой или операционной системой устройства. С его помощью пользователь может изучить любую программу, и когда человек овладеет навыками работы в одной программе, то он с легкостью сможет работать в других подобных, так как у них одинаковый интерфейс. Другими словами, интерфейс – это множество различных средств, которые позволяют человеку легко управлять вычислительной машиной [1].

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

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

Взаимодействие различных приложений возможно несколькими способами; обычно это называется межпрограммным интерфейсом [2].

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

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


Одним из таких шагов развития стало появление межпрограммных интерфейсов контейнерного типа (механизм DDE). Параллельно с этим появилась технология «клиент – сервер», которая позволила обслуживать большое количество прикладных программ (клиенты) одной программой (сервер). [12]

Также шло развитие межпрограммного интерфейса контейнерного типа, что позволило внедрять файлы из одной программы в другую. Возможные варианты видов взаимодействия приложений Конвертирование данных. Конвертирование файлов – это процесс изменения формата или свойств компьютерного файла. Для этого нужны специальные программы – конверторы – как правило, входящие в состав приложения. OLE-технология. OLE (Object Linking and Embedding) – технология, разработанная корпорацией «Майкрософт», служит для связывания и внедрения объектов в другие объекты или документы. OLE позволяет создавать объекты в одном приложении, а после открывать эти объекты в других приложениях. Отличие между связанными и внедренными объектами заключается в месте их хранения, а также способе обновления данных при их помещении в конечный файл.

Например, при помощи ОLE можно вставить таблицы Excel в документы Word, и наоборот. Приложения, поддерживающие технологию OLE, позволяют пользователю вызывать одно приложение из другого, не выходя из контекста интерфейса исходной программы. Используются принципиальные понятия «OLE-объект» и «OLE-контейнер». Вставка данных. При обычной вставке данных другого приложения через буфер обмена или специальным образом в приложение добавляются «мертвые» данные, которые не связаны ни с каким приложением. DDE-технология. Dynamic Data Exchange (DDE) – механизм взаимодействия приложений. Эта технология предоставляет доступ к данным через динамически действующие каналы, устанавливающие связь между приложением, принимающим данные (клиентом), и источником данных (сервером). Например, таблицы Excel могут быть источником данных для приложения Word, принимающего данные по каналу связи DDE [4].

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


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

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

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

1.2. Базовые понятия об объекте

Абстракции являются полезным средством уменьшения сложности. По мере усложнения программного обеспечения большую важность приобретает работа с использованием абстракций. Одной из таких интересных и полезных абстракций, исследованных в семидесятых годах, является Абстрактный Тип Данных (Abstract Data Type — ADT). ADT представляет собой инкапсуляцию структуры данных вместе с процедурами (операциями), которые этими данными манипулируют. Инкапсулированными называются данные, доступ к которым осуществляется через определенные процедуры. Среди языков, использующих ADT, можно назвать Modula-2 и Ada.