Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Шестое лабораторное занятие

Тема:

Простой пример генерации программного кода в среде IBM Rational Rose

  Генерировать программный код на данном лабораторном занятии будем на примере задания пятой лабораторной работы — простейшего графического редактора. (Откройте созданный ранее проект (Рис. 1.1).)   Рис. 1.1 Диаграмма классов – пример простого графического редактора Общая последовательность действий, которые необходимо выполнить для генерации программного кода в среде IBM Rational Rose, состоит из следующих этапов:
  1. Проверка модели на отсутствие ошибок.
  2. Создание компонентов для реализации классов.
  3. Отображение классов на компоненты.
  4. Выбор языка программирования для генерации текста программного кода.
  5. Установка свойств генерации программного кода.
  6. Выбор класса, компонента или пакета.
  7. Генерация программного кода.
Особенности выполнения каждого из этапов могут изменяться в зависимости от выбора языка программирования или схемы базы данных. Рассмотрим особенности выполнения каждого из указанных выше этапов для языка реализации модели ANSI C++. Язык ANSI С++ не допускает использование символов кириллицы в качестве имен классов, атрибутов и операций. Проверка модели на отсутствие ошибок Для проверки модели следует выполнить операцию главного меню: Tools Check Model (Инструменты Проверить модель). Результаты проверки разработанной модели на наличие ошибок отображаются в окне журнала. Прежде чем приступить к генерации текста программного кода разработчику следует добиться устранения всех ошибок и предупреждений, о чем должно свидетельствовать чистое окно журнала (Рис. 1.2).   Рис. 1.2Проверка модели на отсутствие ошибок Создание компонентов для реализации классов Здесь нужно вкратце рассказать про «Диаграмму компонентов». Диаграмма компонентов служит частью физического представления модели и является необходимой для генерации программного кода. Для разработки диаграмм компонентов в браузере проекта предназначено отдельное представление компонентов (Component View), в котором уже содержится диаграмма компонентов с пустым содержанием и именем по умолчанию Main (Главная). Активизация диаграммы компонентов может быть выполнена одним из следующих способов:
  • Щелкнуть на кнопке с изображением диаграммы компонентов на стандартной панели инструментов.
  • Раскрыть представление компонентов в браузере (Component View) и дважды щелкнуть на пиктограмме Main (Главная).
  • Через пункт меню Browse Component Diagram (Браузер Диаграмма компонентов).
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы компонентов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы компонентов. В качестве «контейнера» и «главного компонента» одновременно, будем использовать элемент «Component» («Компонент») . (Рис.1.3) Добавим его в область «диаграммы компонентов» и зададим имя «MainPaint.exe». «exe» - приписка в названии, как бы говорит о том, что при генерации кода можно получить не просто файлы с кодом программы, но и исполняемый файл. (В данном лабораторном занятии не рассматривается, но подобное допускается, если задать в свойствах компонента стереотип <<EXE>> из предлагаемого вложенного списка.) Рис. 1.3 Создали диаграмму компонентов и добавили “Компонент” «MainPaint.exe» Отображение классов на компоненты Для отображения классов на компоненты можно воспользоваться окном спецификации свойств компонента, открытого на вкладке Realizes (Реализует). Для включения реализации класса в данный компонент следует выделить требуемый класс на этой вкладке и выполнить для него операцию контекстного меню Assign (Назначить). В результате перед именем класса на этой вкладке появится специальная отметка (Рис.1.4) Рис. 1.4 Связываем “Компонент” и классы Выбор языка программирования для генерации текста программного кода и Установка свойств генерации программного кода Для выбора языка ANSI C++ в качестве языка реализации модели следует выполнить операцию главного меню: Tools Options (Инструменты Параметры), в результате чего будет вызвано диалоговое окно настройки параметров модели. Далее на вкладке Notation (Нотация) в строке Default Language (Язык по умолчанию) из вложенного списка следует выбрать язык - ANSI C++(Рис.2.1). Если по какой-то причине языка ANSI C++ не оказалось во вложенном списке, то следует убедиться в том, что этот язык программирования установлен в качестве расширения IBM Rational Rose. Для этого следует открыть окно установленных расширений, выполнив операцию главного меню: Add-Ins Add-In Manager (Расширения Менеджер расширений), и убедиться в том, что выставлена отметка в строке с именем языка ANSI C++. После выбора языка программирования по умолчанию следует изменить язык реализации каждого из компонентов модели. С этой целью следует изменить язык в строке Language (Язык) на вкладке General (Общие) окна спецификации свойств компонента, для чего из вложенного списка следует выбрать язык - ANSI C++ (Рис. 2.1).   Рис. 2.1Выбор языка программирования и языка реализации компонентов Выбор класса, компонента или пакета и Генерация программного кода Генерация программного кода в среде IBM Rational Rose возможна для отдельного класса или компонента. Для этого нужный элемент модели предварительно следует выделить в браузере проекта и выполнить операцию контекстного меню: ANSI C++ Generate Code_ (Язык ANSI C++ Генерировать код). В результате этого будет открыто диалоговое окно с предложением выбора классов для генерации программного кода на выбранном языке программирования (Рис. 3.1). После выбора соответствующих классов и нажатия кнопки OK программа IBM Rational Rose выполняет кодогенерацию   . Рис. 3.1 Генерация программного кода

Рис. 3.2 Окно выбора классов для генерации программного кода

Для просмотра и редактирования созданных файлов с текстом программного кода на языке ANSI C++ предназначен встроенный текстовый редактор, который можно открыть с помощью операции контекстного меню: ANSI C++ Browse Header_ (Язык ANSI C++ Просмотреть заголовочный файл) или ANSI C++ Browse Body_ (Язык ANSI C++ Просмотреть файл реализации) для выбранного класса в браузере проекта.

После генерации программного кода для компонентаMainPaint.exe каждому классу, реализованному в данном компоненте, будет соответствовать 2 файла с текстом кода на языке ANSI C++ (Рис.3.3):

· заголовочный файл с расширением «h»;

· файл реализации с расширением «cpp».

Рис. 3.3 Сгенерированные файлы

 

l Пример сгенерированного кода — файл Line.cpp

 

#include "Line.h"

//##ModelId=48FB039303B9

 

Line::get P1()

{}

 

//##ModelId=48FB039C0196

Line::get P2()

{}

 

//##ModelId=48FB03A3035B

Line::set P1(Point P1)

{}

 

//##ModelId=48FB03CC0203

Line::set P2(Point P2)

{}

 

 

//##ModelId=48FB03D40261

Line::move By(Integer X, Integer Y)

{}

 

l Пример сгенерированного кода — файл Line.h

 

#ifndef LINE_H_HEADER_INCLUDED_B6EFE6B3

#define LINE_H_HEADER_INCLUDED_B6EFE6B3

#include "Point.h"

//##ModelId=48FAFE8C0399

 

class Line: public Figure Element

 

{

public:

//##ModelId=48FB039303B9

get P1();

//##ModelId=48FB039C0196

get P2();

//##ModelId=48FB03A3035B

set P1(Point P1);

//##ModelId=48FB03CC0203

set P2(Point P2);

//##ModelId=48FB03D40261

move By(Integer X, Integer Y);

 

};

#endif /* LINE_H_HEADER_INCLUDED_B6EFE6B3 */


Заключение

           Система Rational Rose — признанный лидер среди средств визуального моделирования, и, используя ее, вы сможете интерактивно разрабатывать архитектуру создаваемого приложения, генерировать его исходные тексты и параллельно работать над документированием разрабатываемой системы.

       Преимущества от применения Rational Rose значительны:

· сокращение цикла разработки приложения;

· увеличение продуктивности работы программистов;

· улучшение потребительских качеств создаваемых программ за счет ориентации на пользователей и бизнес;

· способность вести большие проекты и группы проектов;

· возможность повторного использования уже созданного ПО за счет упора на разбор их архитектуры и компонентов;

· язык UML служит универсальным «мостиком» между разработчиками из разных отделов.

       В данных методических указаниях рассмотрены примеры использования данной среды — лабораторные занятия, а также краткий теоретический материал. С их помощью студенты получат начальные знания и навыки в работе с Rational Rose и UML.

Используемая литература

 

1. Учебный курс Интернет-Университета Информационных Технологий (INTUIT.RU) Леоненкова Александра Васильевича «Визуальное моделирование в среде IBM Rational Rose»

Дополнительная литература

1. Практикум для ВУЗов «CASE-технологии» Д.Э.Федотова, Ю.Д.Семенов, К.Н.Чижик;

2. «Rational Rose 2000 и UML визуальное программирование» Терри Кватрани, предисловие грейди Буча ДМК, Москва 2001;


Алфавитный указатель


АИС..................................................................................................................................................... 4

Актер................................................................................................................................................ 19

аргументы редактируемой операции............................................................................................. 59

Ассоциация................................................................................................................................. 22, 31

атрибуты........................................................................................................................................... 27

Генерация программного кода........................................................................................... 67, 70, 71

Главное меню и стандартная панель инструментов.................................................................... 12

действующие лица (Actors)............................................................................................................. 18

деятельности................................................................................................. 47, 49, 50, 51, 52, 53, 54

Диаграмма деятельности (действий)................................................................................. 47, 53, 54

Диаграмма классов.......................................................................................................................... 24

диаграмма компонентов.................................................................................................................. 68

Диаграмма компонентов........................................................................................................... 67, 68

Диаграмма прецедентов.................................................................................................................. 18

заголовочный файл.......................................................................................................................... 72

изображение деятельности.............................................................................................................. 50

изображение перехода..................................................................................................................... 53

квантор видимости.................................................................................................................... 29, 39

логическое представление (Logical View)........................................................................ 24, 47, 55

обобщение............................................................................................................................. 30, 36, 62

Обобщение.................................................................................................................................. 36, 64

однонаправленная ассоциация....................................................................................................... 22

операции........................................................................................................................................... 27

Операции.......................................................................................................................................... 40

Отображение классов на компоненты..................................................................................... 66, 68

Прецедент......................................................................................................................................... 19

Проверка модели на отсутствие ошибок................................................................................. 66, 67

программный код............................................................................................................................. 66

рабочий интерфейс программы...................................................................................................... 12

символ синхронизации............................................................................................................. 48, 53

Специальная панель инструментов............................................................................................... 16

спецификации атрибута.................................................................................................................. 39

спецификации свойств ассоциации.............................................................................................. 32

Стандартная панель инструментов................................................................................................ 12

стереотип.......................................................................................................................................... 39

тип данных атрибута....................................................................................................................... 39

файл реализации............................................................................................................................. 72

элемент принятия решения (ветвления)........................................................................................ 52

Элемент принятия решения (ветвления)....................................................................................... 52

язык реализации............................................................................................................................... 69

 Assign................................................................................................................................................ 68

 Main (Главная)........................................................................................................................... 24, 68

Activity diagram (диаграммы активности)....................................................................................... 9

Class Attribute Specification............................................................................................................. 39

Class diagram (диаграммы классов)................................................................................................ 10

Collaboration diagram (диаграммы сотрудничества)..................................................................... 10

Component..................................................................................................................................... 7, 68

Component diagram (диаграммы компонентов)............................................................................ 11

Component View......................................................................................................................... 67, 68

Deployment diagram (диаграммы топологии).................................................................................. 8

General (Общие)................................................................................................................................ 69

Generalization.................................................................................................................................... 36

Horizontal Synchronization................................................................................................................ 53

Interaction diagram (диаграммы взаимодействия)........................................................................... 9

Language........................................................................................................................................ 4, 69

Rational Rose....................................................................................................................................... 4

Sequence diagram (диаграммы последовательностей действий)................................................... 9

State Maсhine diagram (диаграммы состояний)............................................................................... 8

TextBox............................................................................................................................................. 56

Unidirectional Association................................................................................................................. 22

Unified Modeling Language, UML..................................................................................................... 4

Use case................................................................................................................................................ 5

Use case diagram (диаграммы прецедентов).................................................................................... 7

Use Case View.................................................................................................................................. 19


 



<== предыдущая лекция | следующая лекция ==>
Построение с помощью программы RationalRoseUML диаграммы, изображающей простой графический редактор. | Тематика контрольных работ
Поделиться с друзьями:


Дата добавления: 2018-10-15; Мы поможем в написании ваших работ!; просмотров: 185 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студенческая общага - это место, где меня научили готовить 20 блюд из макарон и 40 из доширака. А майонез - это вообще десерт. © Неизвестно
==> читать все изречения...

3235 - | 3148 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.