Обзор
С помощью встраиваемых модулей языка Rational Rose позволяет разработчикам создавать код непосредственно из модели
разработки. По мере развития разработки реализующие классы могут циклически работать над кодом в итерационном процессе
создания кода из модели, обновления исходного кода и выполнения обратного инжиниринга изменений обратно в модель
разработки.
Следующие встраиваемые модули Rational Rose содержат функции генерирования кода:
Rational Rose Visual C++ позволяет создавать исходный код Visual C++ из классов и компонентов модели Rose. В число
функций входят:
-
Циклический инжиниринг моделей и кода Visual C++
-
Полное создание общих конструкций языка Visual C++, таких как взаимосвязи, определения типов, перечисления, схемы
сообщение/объект/COM, конструкторов и деструкторов
-
Поддержка с помощью диалоговых окон моделирования и создания кода для элементов Visual C++
-
Синтаксическая проверка
-
Режим асинхронизации для автоматического обновления кода или модели при их изменении
-
Возможность расширять и настраивать процесс генерирования кода с помощью библиотек интерфейса COM, ATL и MFC
-
Интеграция с Microsoft Visual Studio, включая файлы IDL
-
Поддержка классов шаблонов Visual C++ и пользовательских шаблонов кода
Тесно интегрированный со средой Microsoft Visual Basic 6.0, встраиваемый модуль Rational Rose Visual Basic Language
Support позволяет генерировать исходный код Visual Basic из компонентов и классов для визуализации существующего к ода
в UML в вашей модели Rose. Расширяемые и настраиваемые инструменты на базе диалоговых окно помогают вам в выполнении
процесса генерирования кода из модели Rose или в обновлении исходного кода при изменении модели.
К этим функциям относятся:
-
Создание и спецификация новых классов Visual Basic в модели Rose с помощью мастера классов
-
Создание элементов в классе и спецификация сведений о реализации класса и его элементов в инструменте Помощник по
работе с моделью
-
Просмотрите код перед созданием для всех элементов каждого класса
-
Развертывание классов компонентов с помощью инструмента Присваивание компонентов
-
Полное создание общих конструкций языка Visual Basic, таких как ограничения, операторы Declare и Event, объявления
Enum и Type, процедуры Get, Let и Set, а также пользовательские классы наборов из компонентов в модели в
соответствующие исходные проекты с помощью инструмента Обновление кода.
-
Режим синхронизации для обновления элементов проекта исходного кода при удалении элементов модели
-
Возможность настраивать и расширять создание кода с помощью шаблонов кода Visual Studio и VBScript
-
Возможность автоматизировать и расширять цикличный инжиниринг и шаблоны с помощью VSRTE SDK
Rose ANSI C+ является встраиваемым модулей C++ для Rational Rose. Он предоставляет следующие возможности:
-
Поддержку разработки модели от анализа до проектировки
-
Поддержку языка C++ без ограничений компилятором C++ одного поставщика
-
Создание исходного кода C++ из модели
-
Круговой инжиниринг, синхронизирующий модели и создаваемый код C++ междуу несколькими итерациями
-
Внесенные в код изменения возвращаются обратно в модель при выполнении обратного инжиниринга
-
Проектирование, моделирование и визуализация всех конструкций C++, включая классы, шаблоны, пространства имен,
наследуемости и функции элементов класса.
-
Поддержка крупных систем
-
Управляемое пользователем создание кода с помощью шаблонов конструкторов, деструкторов и элементов класса по
умолчанию
-
Механизм таблиц стилей для пользовательского форматирования создаваемого кода
Rational Rose J позволяет создавать исходный код Java из классов и компонентов модели Rose. Он содержит следующие
функции:
-
Полное создание общих конструкций языка Java, таких как импорт, расширение, реализация и выбрасывание взаимосвязей,
конструкторов и инициализаторов
-
Синтаксическая проверка
-
Создание тегов Javadoc
-
Поддержку на базе диалоговых окон моделирования и создания кода для EJB и сервлетов, включая файлы архивов JAR и
WAR, для развертывания элементов Java 2 Enterprise Edition (J2EE)
-
Режим асинхронизации для автоматического обновления кода при изменении модели
-
Возможность расширять и настраивать генерирование кода через интерфейс Java XFE
-
Интеграция с IBM's VisualAge for Java
-
Поддержку встроенного редактора для просмотра и изменения исходного кода Java
-
Java Frameworks для добавления классов Java API к модели
Rational Rose CORBA позволяет генерировать совместимый с CORBA код IDL из классов и компонентов в модели Rose. В число
функций входят:
-
Полный процесс генерирования общи конструкций CORBA IDL, таких как const, enum, struct, union, typedef, exception,
value, fixed и interface, согласно спецификации CORBA 2.3
-
Генерирование внутренних типов, схожих с базовыми типами CORBA, для позволения пользователям указывать зависимые от
языка программирования типы для применения адаптерами объектов
-
Синтаксическая проверка
-
Поддержку встроенного редактора для просмотра и изменения исходного кода IDL
-
Циклический инжиниринг, синхронизирующий модели и созданный исходный код IDL между несколькими итерациями
Встраиваемый модуль Rational Rose XML DTD содержит функции визуализации, моделирования и инструменты для документов
XML, использующих определение типа документа (DTD). Из допустимой модели XML DTD можно выполнить прямой
инжиниринг для создания новых XML DTD.
С помощью моделирования XML DTD можно визуализировать структуру документа для просмотра определений элементов,
подлежащих изменению или удалению. Так как скорее всего вы работаете не в изоляции, можно совместно работать над
моделью XML DTD с другими участниками команды разработчиков, чтобы убедиться в применении требований документа XML.
Программа проверки синтаксиса Rational Rose XML DTD обнаружит ошибки в модели XML DTD и предложит вам исправить их
перед реализацией DTD.
Для поддержки преобразования XML в UML, Rational Rose расширяет UML стереотипами элементов XML, списков атрибутов
элементов, сущностей и нотаций. Стереотипы или значения с тегами представляют символы операторов XML, списки
последовательностей, списки с вариантами выбора, элементы и множественность атрибутов элемента.
|