Файл: Технология CORBA (Написание приложения CORBA используя Java).pdf

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

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

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

Добавлен: 12.03.2024

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

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

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

Содержание:

ВВЕДЕНИЕ

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

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

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

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

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

Под "стандартом" применительно к CORBA понимается то, что официально утверждено консорциумом OMG. Надо сказать, что это очень высокий уровень "легитимности", так как авторитет OMG в компьютерном мире чрезвычайно высок. OMG представляет собой некоммерческую организацию, являющуюся содружеством разработчиков программного обеспечения и его потребителей, объединивших свои усилия для создания спецификаций этой технологии. В настоящий момент в OMG состоит более 800 членов, включая всех сколько-нибудь серьезных производителей программного обеспечения (и даже c недавнего времени Microsoft). Первая спецификация CORBA появилась в 1991 г. Новые возможности официально считаются добавленными в CORBA в момент утверждения соответствующей спецификации. Как правило, в разработке спецификации участвуют крупнейшие специалисты в данной области. Разработка реализации – задача конкретной фирмы. Обычно от утверждения спецификации до появления высококачественной реализации проходит довольно много времени – иногда несколько лет. В настоящий момент стандартизовано отображение языка IDL на 6 языков программирования – Ada, C, C++, Cobol, Java и Smalltalk. Существуют также отображения на Pascal (точнее, Delphi), Perl, Python и еще несколько языков, но они не стандартизованы.


Объекты 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]

Наибольшая популярность технологии 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 Применения технологии CORBA в задачах проектирования систем управления

Основы CORBA. Основу CORBA системы составляет системная шина, позволяющая различным компонентам, которые реализованы на разных языках и работающие на разных платформах, находить друг дру­га и взаимодействовать. Эту шину называют брокером объектных запро­сов или просто ORB.

Данные вызова преобразуются в сетевой формат, сериализируются с помощью сгенерированных для объектов заглушек (stubs) и передаются от клиентских к серверным ORB. На сервере данные вызова десериализируются с помощью Фреймворка. В этом случае для объекта, где вы­полняется вызов, генерируются специальные скелетоны для правильного отображения данных. Данные, полученные при обработке вызова, пере­даются по цепочке обратно к клиентскому коду.

Архитектура CORBA. Глобальная структура CORBA приближает­ся к модели OMG, в рамках которой выделяются 4 группы архитектур­ных объектов ORB брокер объектных запросов; сервисы CORBA; сред­ства CORBA; прикладные объекты и приложения. [3]

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

Брокер объектных запросов. CORBA ORB разрешает объектам на­ходить и обращаться к сервисам друг друга. ORB сложнее, чем вызовы удаленных процедур, в частности:

поддерживает не только статические, но и динамические вызовы мето­дов;

отъединяет интерфейс от его реализации;

является самоописываемой системой;

создает прозрачность относительно местоположения объектов.

Все ORB реализовывают как статические, так и динамические вызовы методов.

Сервисы CORBA. В качестве базовых сервисов в рамках CORBA используется пятнадцать сервисов:

• (Naming) Механизм, используемый объектами ORB для обнару­жения других ORB объектов.