|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Генерация кодаПроцесс генерации кода состоит из шести основных шагов: 1. Проверка корректности модели. 2. Установка свойств генерации кода. 3. Выбор класса, компонента или пакета. 4. Генерация кода. Для проверки модели: 1. Выберите в меню Tools > Check Model. 2. Проанализируйте все найденные ошибки в окне журнала. К наиболее распространенным ошибкам относятся такие, например, как сообщения на диаграмме последовательности или кооперативной диаграмме, не соотнесённые с операцией, либо объекты этих диаграмм, не соотнесённые с классом. С помощью пункта меню Check Model можно выявить большую часть неточностей и ошибок в модели. Пункт меню Access Violations позволяет обнаруживать нарушения правил доступа, возникающие тогда, когда существует связь между двумя классами разных пакетов, но связи между самими пакетами нет. Чтобы обнаружить нарушение правил доступа: 1. Выберите в меню Report > Show Access Violations. 2. Проанализируйте все нарушения правил доступа в окне. Можно установить несколько параметров генерации кода для классов, атрибутов, компонентов и других элементов модели. Этими свойствами определяется способ генерации программ. Для каждого языка в Rose предусмотрен ряд определенных свойств генерации кода. Перед генерацией кода рекомендуется анализировать эти свойства и вносить необходимые изменения. Для анализа свойств генерации кода выберите Tools > Options, а затем вкладку соответствующего языка. В окне списка можно выбрать класс, атрибут, операцию и другие элементы модели. Для каждого языка в этом списке указаны свои собственные элементы модели. При выборе разных значений на экране появляются разные наборы свойств. Любые изменения, вносимые в набор свойств в окне Tools > Options, воздействуют на все элементы модели, для которых используется данный набор. Иногда нужно изменить свойства генерации кода для одного класса, атрибута, одной операции и т.д. Для этого отройте окно спецификации элемента модели. Выберите вкладку языка (C++, Java, …) и измените свойства здесь. Все изменения, вносимые в окне спецификации элемента модели, оказывают влияние только на этот элемент. При генерации кода за один раз можно создать класс, компонент или целый пакет. Код генерируется с помощью диаграммы или браузера. При генерации кода из пакета можно выбрать или пакет логического представления на диаграмме классов, или пакет представления компонентов на диаграмме компонентов. При выборе пакета логического представления генерируются все классы этого пакета. При выборе пакета представления компонентов генерируются все компоненты этого пакета. После выбора класса или компонента на диаграмме выберите в меню соответствующий вариант генерации кода. Сообщения об ошибках, возникающих в процессе генерации кода, будут появляться в окне журнала. Во время генерации кода Rose выбирает информацию из логического и компонентного представлений модели и генерирует большой объем «скелетного» (skeletal) кода: – Классы. Генерируются все классы модели. – Атрибуты. Код включает атрибуты каждого класса, в том числе видимость, тип данных и значение по умолчанию. – Сигнатуры операций. Код содержит определения операций со всеми параметрами, типами данных параметров и типом возвращаемого значения операции. – Связи. Некоторые из связей модели вызывают создание атрибутов при генерации кода. – Компоненты. Каждый компонент реализуется в виде соответствующего файла с исходным кодом.
Упражнение 16. Генерация кода С++.
1. Откройте диаграмму компонентов системы. 2. Выберите все объекты на диаграмме компонентов. 3. Выберите Tools > C++ > Code Generation в меню. 4. Выполните генерацию кода. 5. Просмотрите результаты генерации (меню Tools > C++ > Browse Header и Tools > C++ > Browse Body).
Глава 4. Варианты заданий для самостоятельной работы „Нет проблем! Мы можем покончить с этой ерундой за выходные!“ Э. Йордон „Путь камикадзе“ В каждом из предложенных вариантов требуется при помощи CASE-средства Rational Rose построить модель программного обеспечения. Процесс создания модели должен проходить так, как это описано в главе 3. Должны быть выполнены следующие действия: 1) составление глоссария проекта; 2) создание модели вариантов использования; 3) анализ вариантов использования; 4) проектирование системы; 5) реализация системы. После выполнения третьего этапа модель должна удовлетворять перечисленным ниже требованиям. Глоссарий проекта должен иметь вид таблицы и храниться в отдельном файле. На диаграммах вариантов использования каждое действующее лицо (actor) и вариант использования должны сопровождаться описанием. Эти описания должны быть составлены на русском языке. Описание действующего лица должно коротко (в одну-две строки) сообщать о роли данного лица. Описание варианта использования должно включать в себя пояснение, предусловие, потоки событий (основной и альтернативные, если таковые есть) и постусловие. Описания представляют собой либо присоединенные текстовые файлы, либо текст, введенный в поле Documentation спецификации соответствующего элемента диаграммы. Диаграммы взаимодействия, соответствующие потокам событий вариантов использования, должны содержать необходимые пояснения. При проектировании системы требуется: § создать иерархию классов системы; § разместить классы по пакетам (использовать деление: пользовательский интерфейс – управление – данные; или другое в зависимости от постановки задачи); § связать объекты с классами, сообщения на диаграммах взаимодействия – с операциями; § каждый класс снабдить описанием, которое должно включать в себя краткое описание (ответственность класса), описание атрибутов в виде таблицы (имя, описание, тип), таблицу с описанием операций (имя, описание, сигнатура); § для классов указать стереотипы; § построить диаграммы классов системы, отображающие связи между классами; § для описания поведения экземпляров отдельных классов построить диаграммы состояний; § разработать (если это требуется вариантом задания) схему базы данных и отобразить ее на диаграмме «сущность – связь». При реализации системы необходимо построить диаграммы компонентов для каждого пакета и для системы в целом. Также следует разработать диаграмму размещения. В зависимости от варианта задания диаграмма размещения должна показывать расположение компонентов в распределенном приложении или связи между встроенным процессором и устройствами. Должна быть произведена проверка корректности модели и автоматическая генерация кода средствами Rational Rose. Ниже перечислены варианты заданий. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |