Методы и средства инженерии программного обеспечения


         

Типы компонентных структур - часть 3


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

–        настраивания готовых компонентов на новые условия, которые связаны с меньшими усилиями, чем разработка новых компонентов.

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

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

Стандартный механизм интероперабельности для связи между Java и C/C++ компонентами использует Java Native Interface (JNI) при  реализации обращения из Java–классов к функциям и библиотекам на других ЯП. Механизм реализации включает: анализ Java–классов для поиска прототипов обращений к функциям на C/C++; генерацию заглавных файлов для использования их при компиляции C/C++ программ. Java–класс  “знает”, что в нем помещается обращение не к Java–методу. Схема связи Java ® C/C++ [16].

Другой вариант реализации этой задачи предлагает технология Bridge2Java фирмы IBM alpha Works. В ней  обеспечивается обращение из Java–классов к COM–компонентам [5]. Для  COM–компонента генерируется оболочка, которая включает прокси–класс для преобразования данных с помощью стандартной библиотеки типов и вызов COM–функций. Данная схема  не требует изменений в исходном Java–классе, а COM–компоненты могут быть написаны на разных ЯП.

Механизм интероперабельности предлагает и  платформа .Net [17] с помощью промежуточного языка Common Language Runtime (CLR), в который транслируются коды, написанные  в ЯП (C#, Visual Basic, C++, Jscript) и интегрируются эти компоненты.При этом  используется библиотека стандартных классов независимо от языка реализации и доступа к готовым компонентам без ориентации на эту платформу (например,  к COM–компонентам). С этой целью используются стандартные средства генерации оболочки для COM–компонента в представление .Net–компонента, а также для  приведенных  выше ЯП.

Особенности ОС и архитектур компьютеров учитывает среда CORBA, в которой реализована  иерархия механизмов  интероперабельности – от самого верхнего уровня (поддержка разных ЯП) к самому нижнему (с учетом архитектуры).




Содержание  Назад  Вперед