типов (tk_struct, tk_sequence).
Для каждого типа данных, определенного пользователем, константы TypeCode
порождаются компилятором по спецификации в языке IDL.
Преобразование данных осуществляется с помощью процедур encoder ( ) и
decoder ( ), интерпретатора TypeCode.
Параметрами процедуры encoder( ) есть данные для преобразования, которое
отвечает TypeCode, и указатель на буфер.
Таким образом, достоинством метода преобразования на основе TypeCode, есть
компактность выполненного кода, унифицированность использования и
единообразие при работе с данными любого типа и произвольной сложности.
Интерпретатор позволяет превратить данные, типы которых не известны при
компиляции или во время выполнения.
Типизированные функции. Преобразование сложных данных осуществляется
с помощью функций отображения типов, описанных спецификациями IDL.
Трансформация данных типа struct, например, включает последовательное
преобразование всех ее полей, в порядке, указанном в спецификации функции в
языке IDL, в язык С++. Эту функцию выполняет компилятор IDL, порождая файлы
отображения в соответствующие конструкции С++, набор вспомогательных
процедур, необходимых для обращения к брокеру ORB. Для каждого типа IDL
имеются соответствующие процедуры их преобразования в С ++.
Функции преобразования базовых типов учитывают информацию о границе
выравнивания и размере данных, совпадающими с методами класса CDR, а также
реализуют преобразования составных типов, имеющих вложенную структуру, с
помощью inline–подстановок. Данные типа array преобразуются специальными
функциями и процедурами для простых типов данных.
Типизированные функции и процедуры такие, как кодирование и
декодирование, имеют симметричные структуры с точностью до базовых процедур
и других специфических действий, используемых для отображения типов данных
языка IDL в тип данных языка С++.
7.4.2. ВЗАИМОДЕЙСТВИЕ КОМПОНЕНТОВ В СРЕДЕ JAVA
Средства интеграции компонентов в JAVA. Основные типы компонентов в
языке JAVA – это проекты, формы (AWT компоненты), beans компоненты,
COBRA компоненты, RMI компоненты, стандартные классы–оболочки, JSP
компоненты, сервлеты, XML– документы, DTD документы и файлы разных типов
и др. [25]. Интерфейс является частью спецификации названных компонентов и
способствует проведению интеграции компонентов в среде системы JAVA.
Шаблон развертывания представляет собою скрытую часть и необязательную
часть абстракции компонента, который может быть повторно использован в одной
или многих средах и для этого он имеет несколько шаблонов отладки. К
спецификации компонента могут добавляться новые шаблоны интеграции или
изменяться старые шаблоны. В некоторых классах ПИК параметры
интегрирования в новую среду включаются в интерфейс компонента, что
ограничивает способность компонента адаптироваться к этим средам и тем самым
уменьшается круг задач, в которых он может повторно использоваться.
Проекты как средство композиции компонентов. Создание нового проекта
состоит в задании конфигурации системы с помощью компонентов JAVA и