dwww Home | Show directory contents | Find package

<FILENAME filename="index.html"><html><head><title>Руководство пользователя Umbrello UML Modeller</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="description" content="Umbrello UML Modeller позволяет использовать в процессе разработки программного обеспечения язык UML (UML), предоставляя возможность создавать диаграммы для разработки и документирования систем."><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="next" href="introduction.html" title="Глава 1. Введение"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Руководство пользователя <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">След.</a></td></tr></table></div><div id="contentBody"><div lang="ru" class="book"><div class="titlepage"><div><div><h1 class="title"><a name="Umbrello"></a>Руководство пользователя <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div><div><div class="authorgroup"><h3 class="corpauthor">Авторы <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h3><span class="othercredit"><span class="contrib">Обновление перевода на русский язык</span>: <span class="firstname">Олеся</span> <span class="surname">Герасименко</span><br></span></div></div><div>Издание <span class="releaseinfo">2.11.0 (<span class="date">01 июня 2013 г.</span>)</span></div><div><p class="copyright">Авторские права © 2001 Paul Hensgen</p></div><div><p class="copyright">Авторские права © 2002-2020 Авторы <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></p></div><div><div><div class="abstract"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> позволяет использовать в процессе разработки программного обеспечения язык UML (<acronym class="acronym">UML</acronym>), предоставляя возможность создавать диаграммы для разработки и документирования систем. </p></div></div></div></div><hr></div><div class="toc"><p><b>Содержание</b></p><dl class="toc"><dt><span class="chapter"><a href="introduction.html">1. Введение</a></span></dt><dt><span class="chapter"><a href="uml-basics.html">2. Основы <acronym class="acronym">UML</acronym></a></span></dt><dd><dl><dt><span class="sect1"><a href="uml-basics.html#about-uml">О языке <acronym class="acronym">UML</acronym></a></span></dt><dt><span class="sect1"><a href="uml-elements.html">Элементы <acronym class="acronym">UML</acronym></a></span></dt><dd><dl><dt><span class="sect2"><a href="uml-elements.html#use-case-diagram">Диаграмма вариантов использования</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#class-diagram">Диаграмма классов</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#sequence-diagram">Диаграммы последовательностей</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#collaboration-diagram">Диаграммы кооперации</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#state-diagram">Диаграмма состояний</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#activity-diagram">Диаграмма деятельности</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#helper-elements">Вспомогательные элементы</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#component-diagram">Диаграммы компонентов</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#deployment-diagram">Диаграммы развёртывания</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#entity-relationship-diagram">Диаграммы отношений сущностей</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#extended-entity-relationship-concepts">Концепции расширенных диаграмм отношений сущностей</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="working-with-umbrello.html">3. Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></a></span></dt><dd><dl><dt><span class="sect1"><a href="working-with-umbrello.html#user-interface">Интерфейс пользователя</a></span></dt><dd><dl><dt><span class="sect2"><a href="working-with-umbrello.html#tree-view">Иерархия</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#documentation-window">Окно документации и истории команд</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#work-area">Рабочая область</a></span></dt></dl></dd><dt><span class="sect1"><a href="load-save.html">Создание, загрузка и сохранение моделей</a></span></dt><dd><dl><dt><span class="sect2"><a href="load-save.html#new-model">Новая модель</a></span></dt><dt><span class="sect2"><a href="load-save.html#save-model">Сохранение модели</a></span></dt><dt><span class="sect2"><a href="load-save.html#load-model">Загрузка модели</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-model.html">Редактирование моделей</a></span></dt><dt><span class="sect1"><a href="add-remove-diagrams.html">Добавление и удаление диаграмм</a></span></dt><dd><dl><dt><span class="sect2"><a href="add-remove-diagrams.html#create-diagram">Создание диаграмм</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#remove-diagram">Удаление диаграмм</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#rename-diagram">Переименование диаграмм</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-diagram.html">Редактирование диаграмм</a></span></dt><dd><dl><dt><span class="sect2"><a href="edit-diagram.html#insert-elements">Вставка элементов</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#delete-elements">Удаление элементов</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-elements">Редактирование элементов</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-classes">Редактирование классов</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#associations">Ассоциации</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#notes">Примечания, текст и блоки</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="code-import-generation.html">4. Импорт и генерация кода</a></span></dt><dd><dl><dt><span class="sect1"><a href="code-import-generation.html#code-generation">Генерация кода</a></span></dt><dd><dl><dt><span class="sect2"><a href="code-import-generation.html#generate-code">Генерация кода</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-import.html">Импорт кода</a></span></dt></dl></dd><dt><span class="chapter"><a href="other-features.html">5. Дополнительные возможности</a></span></dt><dd><dl><dt><span class="sect1"><a href="other-features.html#idm973">Дополнительные возможности <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></a></span></dt><dd><dl><dt><span class="sect2"><a href="other-features.html#copying-as-png">Копирование объектов в виде изображений в формате PNG</a></span></dt><dt><span class="sect2"><a href="other-features.html#export-as-png">Экспортирование в виде изображения</a></span></dt><dt><span class="sect2"><a href="other-features.html#printing">Печать</a></span></dt><dt><span class="sect2"><a href="other-features.html#logical-folders">Логические папки</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="settings.html">6. Настройка</a></span></dt><dd><dl><dt><span class="sect1"><a href="settings.html#general-settings">Основные параметры</a></span></dt><dd><dl><dt><span class="sect2"><a href="settings.html#misc-settings">Разное</a></span></dt><dt><span class="sect2"><a href="settings.html#autosave-settings">Автосохранение</a></span></dt><dt><span class="sect2"><a href="settings.html#startup-settings">Запуск приложения</a></span></dt><dt><span class="sect2"><a href="settings.html#notifications-settings">Уведомления</a></span></dt></dl></dd><dt><span class="sect1"><a href="font-settings.html">Настройка шрифтов</a></span></dt><dt><span class="sect1"><a href="ui-settings.html">Интерфейс пользователя</a></span></dt><dd><dl><dt><span class="sect2"><a href="ui-settings.html#ui-general">Общие</a></span></dt><dt><span class="sect2"><a href="ui-settings.html#ui-associations">Ассоциации</a></span></dt><dt><span class="sect2"><a href="ui-settings.html#ui-color">Цвет</a></span></dt></dl></dd><dt><span class="sect1"><a href="class-settings.html">Параметры класса</a></span></dt><dd><dl><dt><span class="sect2"><a href="class-settings.html#show-class-settings">Показать</a></span></dt><dt><span class="sect2"><a href="class-settings.html#starting-scope-class-settings">Начальная область видимости</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-importer-settings.html">Параметры импорта кода</a></span></dt><dd><dl><dt><span class="sect2"><a href="code-importer-settings.html#include-search-paths-settings">Пути поиска включений</a></span></dt><dt><span class="sect2"><a href="code-importer-settings.html#cpp-import-settings">Импорт C++</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-generation-settings.html">Генерация кода</a></span></dt><dd><dl><dt><span class="sect2"><a href="code-generation-settings.html#code-gen-settings-general-tab">Вкладка «Общие» параметров генерации кода</a></span></dt><dt><span class="sect2"><a href="code-generation-settings.html#code-gen-settings-format-tab">Вкладка «Оформление» параметров генерации кода</a></span></dt><dt><span class="sect2"><a href="code-generation-settings.html#code-gen-settings-language-options">Вкладка «Языки программирования» параметров генерации кода</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-viewer-settings.html">Просмотр кода</a></span></dt><dt><span class="sect1"><a href="auto-layout-settings.html">Параметры автоматического шаблона</a></span></dt></dl></dd><dt><span class="chapter"><a href="authors.html">7. Авторы и история</a></span></dt><dt><span class="chapter"><a href="copyright.html">8. Авторское право</a></span></dt></dl></div><FILENAME filename="introduction.html"><html><head><title>Глава 1. Введение</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="next" href="uml-basics.html" title="Глава 2. Основы UML"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Введение</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="uml-basics.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="introduction"></a>Глава 1. Введение</h1></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> — это средство для работы с диаграммами <acronym class="acronym">UML</acronym>, которое может быть полезным в процессе разработки программного обеспечения, особенно на стадиях анализа и проектирования. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> поможет вам создать высококачественный продукт. Также <acronym class="acronym">UML</acronym> может быть использован для документирования проекта приложения. </p><p>Наличие хорошей модели приложения позволяет наиболее эффективно взаимодействовать с другими разработчиками, работающими над проектом, а также с заказчиками. Хорошая модель очень важна для средних и больших проектов, но также будет полезна и для небольших проектов. Даже если проект небольшой и работа над ним ведётся в одиночку, хорошая модель предоставит общую картину разработки, что поможет сразу написать качественный код. </p><p><acronym class="acronym">UML</acronym> is the diagramming language used for describing such models. You can represent your ideas in <acronym class="acronym">UML</acronym> using different types of diagrams. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2.11 supports the following types: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Диаграмма классов</p></li><li class="listitem"><p>Диаграмма последовательностей</p></li><li class="listitem"><p>Диаграмма кооперации</p></li><li class="listitem"><p>Диаграмма вариантов использования</p></li><li class="listitem"><p>Диаграмма состояний</p></li><li class="listitem"><p>Диаграмма деятельности</p></li><li class="listitem"><p>Диаграмма компонентов</p></li><li class="listitem"><p>Диаграмма развёртывания</p></li><li class="listitem"><p>Диаграмма отношений сущностей</p></li></ul></div><p>Более подробные сведения о <acronym class="acronym">UML</acronym> доступны на веб-сайте <a class="ulink" href="http://www.omg.org" target="_top"><acronym class="acronym">OMG</acronym>, http://www.omg.org</a>, создателя стандарта <acronym class="acronym">UML</acronym>. </p><p>Надеемся, что вам понравится <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> и что данный продукт поможет вам в разработке высококачественного программного обеспечения. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> является свободным программным обеспечением и предоставляется бесплатно. Единственная просьба — это высылать отчёты о выявленных ошибках, проблемах или предложения разработчикам <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> по адресу <code class="email">(umbrello-devel AT kde.org)</code> или через сайт <a class="ulink" href="https://bugs.kde.org" target="_top">https://bugs.kde.org</a>. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="uml-basics.html">След.</a></td></tr><tr><td class="prevCell">Руководство пользователя <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell"> </td><td class="nextCell"> Основы <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="uml-basics.html"><html><head><title>Глава 2. Основы UML</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="introduction.html" title="Глава 1. Введение"><link rel="next" href="uml-elements.html" title="Элементы UML"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Основы <acronym class="acronym">UML</acronym></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="uml-elements.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="uml-basics"></a>Глава 2. Основы <acronym class="acronym">UML</acronym></h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="about-uml"></a>О языке <acronym class="acronym">UML</acronym></h2></div></div></div><p>Данный раздел предоставит вам небольшой обзор основ <acronym class="acronym">UML</acronym>. Он не является учебником по <acronym class="acronym">UML</acronym>, и если вы хотите узнать побольше об <acronym class="acronym">UML</acronym> или в целом о планировании разработки программного обеспечения, обратитесь к одной из многих книг по данной теме. В Интернете есть много учебных пособий, можете начать с них. </p><p>Унифицированный язык моделирования (<acronym class="acronym">UML</acronym>) является языком диаграмм или обозначений для спецификации, визуализации и документации модели объектно-ориентированных программных систем. <acronym class="acronym">UML</acronym> не является методом разработки, то есть он не определяет последовательность действий при разработке программного обеспечения. Он помогает описать свою идею и взаимодействовать с другими разработчиками системы. <acronym class="acronym">UML</acronym> управляется Object Management Group (<acronym class="acronym">OMG</acronym>) и является промышленным стандартом, описывающим модели программного обеспечения. </p><p><acronym class="acronym">UML</acronym> создан для применения в разработке объектно-ориентированного программного обеспечения и с некоторыми ограничениями может применяться для других парадигм программирования. </p><p><acronym class="acronym">UML</acronym> состоит из множества модельных элементов, которые представляют различные компоненты разрабатываемой системы. Элементы <acronym class="acronym">UML</acronym> используются для создания диаграмм, которые описывают определённую часть системы или точку зрения на неё. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> поддерживает следующие типы диаграмм: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#use-case-diagram" title="Диаграмма вариантов использования">Диаграммы вариантов использования</a></em></span> отображают действующих лиц (людей или других пользователей системы), варианты использования (сценарии использования системы) и их взаимодействие.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#class-diagram" title="Диаграмма классов">Диаграммы классов</a></em></span> отображают классы и взаимодействие между ними.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#sequence-diagram" title="Диаграммы последовательностей">Диаграммы последовательностей</a></em></span> отображают объекты и их взаимодействие, выделяя хронологию обмена сообщениями между объектами.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#collaboration-diagram" title="Диаграммы кооперации">Диаграммы кооперации</a></em></span> отображают объекты и их взаимодействие, выделяя объекты, которые участвуют в обмене сообщениями.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#state-diagram" title="Диаграмма состояний">Диаграммы состояний</a></em></span> отображают состояния, изменения состояний и события в объектах или компонентах системы.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#activity-diagram" title="Диаграмма деятельности">Диаграммы деятельности</a></em></span> отображают деятельность и переходы от одной деятельности к другой, являющиеся следствием событий, которые произошли в определённой части системы.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#component-diagram" title="Диаграммы компонентов">Диаграммы компонентов</a></em></span> показывают компоненты верхнего уровня (такие как KParts или Java Beans).</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#deployment-diagram" title="Диаграммы развёртывания">Диаграммы развёртывания</a></em></span> показывают экземпляры компонентов и их взаимоотношения.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#entity-relationship-diagram" title="Диаграммы отношений сущностей">Диаграммы отношений сущностей</a></em></span> отображают данные и отношения и ограничения, существующие между этими данными.</p></li></ul></div></div><FILENAME filename="uml-elements.html"><html><head><title>Элементы UML</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="uml-basics.html" title="Глава 2. Основы UML"><link rel="prev" href="uml-basics.html" title="Глава 2. Основы UML"><link rel="next" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Элементы <acronym class="acronym">UML</acronym></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-basics.html">Пред.</a></td><td class="upCell">Основы <acronym class="acronym">UML</acronym></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="uml-elements"></a>Элементы <acronym class="acronym">UML</acronym></h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="use-case-diagram"></a>Диаграмма вариантов использования</h3></div></div></div><p>Диаграммы вариантов использования описывают взаимоотношения и зависимости между группами <span class="emphasis"><em>вариантов использования</em></span> и <span class="emphasis"><em>действующих лиц</em></span>, участвующими в процессе.</p><p>Важно понимать, что диаграммы вариантов использования не предназначены для отображения проекта и не могут описывать внутреннее устройство системы. Диаграммы вариантов использования предназначены для упрощения взаимодействия с будущими пользователями системы, с клиентами, и особенно пригодятся для определения необходимых характеристик системы. Другими словами, диаграммы вариантов использования говорят о том, <span class="emphasis"><em>что</em></span> система должна делать, не указывая <span class="emphasis"><em>сами</em></span> применяемые методы.</p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="use-case-diagram.png" alt="Диаграмма вариантов использования"><div class="caption"><p>Диаграмма вариантов использования </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="use-case"></a>Вариант использования</h4></div></div></div><p><span class="emphasis"><em>Вариант использования</em></span> описывает, с точки зрения действующего лица, группу действий в системе, которые приводят к конкретному результату.</p><p>Варианты использования являются описаниями типичных взаимодействий между пользователями системы и самой системой. Они отображают внешний интерфейс системы и указывают форму того, что система должна сделать (именно «что», а не «как»). </p><p>При работе с вариантами использования важно помнить несколько простых правил: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Каждый вариант использования относится как минимум к одному действующему лицу</p></li><li class="listitem"><p>Каждый вариант использования имеет инициатора</p></li><li class="listitem"><p>Каждый вариант использования приводит к соответствующему результату (результату с <span class="quote">«<span class="quote">бизнес-значением</span>»</span>).</p></li></ul></div><p>
</p><p>Варианты использования также могут взаимодействовать с другими вариантами использования. Три наиболее часто встречающихся типа взаимодействия между вариантами использования приведены ниже:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;включение&gt;&gt;</em></span> указывает, что вариант использования встраивается <span class="emphasis"><em>в</em></span> другой вариант использования;</p></li><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;добавление&gt;&gt;</em></span> указывает, что в определённых ситуациях или в некоторой точке (называемой точкой расширения) вариант использования будет расширен другим;</p></li><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;обобщение&gt;&gt;</em></span> указывает, что вариант  использования наследует характеристики <span class="quote">«<span class="quote">родительского</span>»</span> варианта использования и может переопределить некоторые из них или добавить новые, подобно наследованию в классах. </p></li></ul></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="actor"></a>Действующее лицо</h4></div></div></div><p>Действующее лицо является внешним источником (не элементом системы), который взаимодействует с системой через вариант использования. Действующие лица могут быть как реальными людьми (например, пользователями системы), так и другими компьютерными системами или внешними событиями. </p><p>Действующие лица представляют не <span class="emphasis"><em>физических</em></span> людей или системы, а их <span class="emphasis"><em>роли</em></span>. Эти означает, что когда человек взаимодействует с системой различными способами (беря на себя различные роли), он представлен несколькими действующими лицами. Например, человек, работающий в службе поддержки и принимающий от клиентов заказы, будет отображаться в системе как <span class="quote">«<span class="quote">участник отдела поддержки</span>»</span> и <span class="quote">«<span class="quote">участник отдела продаж</span>»</span>. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="use-case-description"></a>Описание варианта использования</h4></div></div></div><p>Описания вариантов использования являются текстовыми пояснениями варианта использования. Они обычно имеют форму заметки или документа, который каким-то образом прикрепляется к варианту использования и описывает процесс или деятельность, существующую в варианте использования. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="class-diagram"></a>Диаграмма классов</h3></div></div></div><p>Диаграммы классов отображают различные классы, из которых состоит система, и их взаимодействие между собой. Диаграммы классов являются <span class="quote">«<span class="quote">статичными</span>»</span> диаграммами, потому что они отображают классы вместе с их методами и атрибутами, так же как и статические взаимодействия между ними: какие классы <span class="quote">«<span class="quote">знают</span>»</span> о каких классах или какие классы <span class="quote">«<span class="quote">являются частью</span>»</span> других классов, но не отображают обмен сообщениями между классами. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class-diagram.png" alt="Диаграмма классов"><div class="caption"><p>Диаграмма классов </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class"></a>Класс</h4></div></div></div><p>Класс определяет атрибуты и методы набора объектов. Все объекты класса (называемые экземплярами) имеют одинаковое поведение и одинаковый набор атрибутов (у каждого объекта — собственный набор атрибутов). Иногда вместо класса используется термин <span class="quote">«<span class="quote">тип</span>»</span>, но важно понимать, что эти термины неодинаковы. Термин <span class="quote">«<span class="quote">Тип</span>»</span> имеет более общий смысл. </p><p>В <acronym class="acronym">UML</acronym> классы представлены прямоугольниками с именем класса, которые также могут отображать атрибуты и операции класса в двух других <span class="quote">«<span class="quote">отделениях</span>»</span> внутри прямоугольника. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class.png" alt="Визуальное представление класса в UML"><div class="caption"><p>Визуальное представление класса в <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="attribute"></a>Атрибуты</h5></div></div></div><p>В <acronym class="acronym">UML</acronym> атрибуты отображаются с как минимум их названием, но также могут быть показаны тип, начальное значение и другие свойства. Атрибуты также могут отображаться с указанием их области видимости: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> отмечает <span class="emphasis"><em>открытые (public)</em></span> атрибуты;</p></li><li class="listitem"><p><code class="literal">#</code> отмечает <span class="emphasis"><em>защищённые (protected)</em></span> атрибуты;</p></li><li class="listitem"><p><code class="literal">-</code> отмечает <span class="emphasis"><em>закрытые (private)</em></span> атрибуты.</p></li></ul></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="operation"></a>Методы</h5></div></div></div><p>Методы (операции) также отображаются с как минимум их названием, но также могут быть показаны параметры и возвращаемый тип. Подобно атрибутам, методы имеют область видимости: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> отмечает <span class="emphasis"><em>открытые (public)</em></span> операции;</p></li><li class="listitem"><p><code class="literal">#</code> отмечает <span class="emphasis"><em>защищённые (protected)</em></span> операции;</p></li><li class="listitem"><p><code class="literal">-</code> отмечает <span class="emphasis"><em>закрытые (private)</em></span> операции.</p></li></ul></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="templates"></a>Шаблоны</h5></div></div></div><p>Классы могут иметь шаблоны, значение которых используется для неуказанного класса или типа. Тип шаблона указывается при инициализации класса (то есть при создании объекта). Шаблоны используются в современном C++ и будут введены в Java 1.5, где будут обозначаться как Generics. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations"></a>Ассоциации классов</h4></div></div></div><p>Классы могут взаимодействовать друг с другом различными способами:</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="generalization"></a>Обобщение</h5></div></div></div><p>Наследование является основной концепцией объектно-ориентированного программирования, в которой класс <span class="quote">«<span class="quote">получает</span>»</span> все атрибуты и методы наследуемого класса и может переопределять/модифицировать некоторые из них, имея возможность добавлять собственные атрибуты и методы.</p><p>В <acronym class="acronym">UML</acronym> ассоциация <span class="emphasis"><em>обобщения</em></span> между двумя классами помещает их в иерархию, представляющую концепцию наследования производного класса от базового. В <acronym class="acronym">UML</acronym> обобщения отображаются в виде линии, соединяющей два класса, со стрелкой у базового класса. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generalization.png" alt="Визуальное представление обобщения в UML"><div class="caption"><p>Визуальное представление обобщения в <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="uml-associations"></a>Ассоциации</h5></div></div></div><p>Ассоциации отображают взаимодействия между классами и определяют общую семантику и структуру многих типов <span class="quote">«<span class="quote">связей</span>»</span> между объектами.</p><p>Ассоциации являются механизмом, который позволяет объектам взаимодействовать с друг другом. Они описывают связи между различными классами (связи между объектами называются соединениями объектов или <span class="emphasis"><em>ссылками</em></span>. </p><p>Ассоциации могут иметь роль, которая определяет назначение ассоциации и может быть одно- или двунаправленной, показывая, могут ли взаимодействующие объекты обмениваться сообщениями, или только один объект может отсылать сообщения. Каждый конец ассоциации имеет описание множественности, которое указывает, какое количество объектов на этой стороне ассоциации может взаимодействовать с одним объектом на другой стороне. </p><p>В <acronym class="acronym">UML</acronym> ассоциации отображаются в виде линии, соединяющей взаимодействующие классы, и могут показывать роль и количество объектов с каждой стороны. Множественность отображается в виде диапазона [мин..макс] неотрицательных значений, звёздочка (<code class="literal">*</code>) в качестве максимального значения обозначает бесконечность. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="association.png" alt="Визуальное представление ассоциации в UML"><div class="caption"><p>Визуальное представление ассоциации в <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="aggregation"></a>Агрегация</h5></div></div></div><p>Агрегации являются специальным типом ассоциаций, в котором два участвующих класса не равнозначны по статусу, но создают взаимодействие типа <span class="quote">«<span class="quote">часть-целое</span>»</span>. Агрегация описывает, как класс, играющий роль целого, создаётся из других классов, играющих роль частей. Для агрегаций класс, выступающий в роли целого, всегда имеет множественность, равную единице. </p><p>В <acronym class="acronym">UML</acronym> агрегации отображаются в виде линии с ромбом на стороне целого, соединяющей взаимодействующие классы. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="aggregation.png" alt="Визуальное представление агрегации в UML"><div class="caption"><p>Визуальное представление агрегации в <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="composition"></a>Композиция</h5></div></div></div><p>Композиция является ассоциацией, которая представляет <span class="emphasis"><em>очень тесную</em></span> агрегацию. Это означает, что композиция формирует взаимодействия типа <span class="quote">«<span class="quote">часть-целое</span>»</span>, но эти взаимодействия настолько сильные, что части не могут существовать сами по себе. Они существуют только внутри целого, и при уничтожении целого уничтожаются и части.</p><p>В <acronym class="acronym">UML</acronym> композиции отображаются в виде линии с закрашенным ромбом на стороне целого, соединяющей взаимодействующие классы. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="composition.png" alt="Визуальное представление композиции в UML"></div></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="other-class-diagram-items"></a>Другие элементы диаграммы классов</h4></div></div></div><p>Помимо классов, диаграммы классов могут содержать и некоторые другие элементы.</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="interfaces"></a>Интерфейсы</h5></div></div></div><p>Interfaces are abstract classes which means instances cannot be directly created of them. They can contain operations but no attributes. Classes can inherit from interfaces (through a realisation association) and instances can then be made of these classes.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="datatype"></a>Типы данных</h5></div></div></div><p>Типы данных являются примитивами, которые обычно встроены в язык программирования. Яркими примерами могут служить целые и логические типы. Они не могут иметь связей с классами, но классы могут использовать их.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="enum"></a>Перечисления</h5></div></div></div><p>Перечисления представляют собой простой список значений. Примером перечисления является перечисление дней недели. Параметры перечисления называются перечисляемыми константами. Подобно типам данных, они не могут иметь связей с классами, но классы могут использовать их.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="package"></a>Пакеты</h5></div></div></div><p>Пакеты представляют собой пространства имён в языке программирования. В диаграмме они используются для представления частей системы, которые содержат более одного класса (число классов может превышать несколько сотен).</p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sequence-diagram"></a>Диаграммы последовательностей</h3></div></div></div><p>Диаграммы последовательностей показывают обмен сообщениями (то есть вызовы методов) между различными объектами в специфической, ограниченной по времени, ситуации. Диаграммы последовательностей специально выделяют порядок и время отсылки сообщений объектам.</p><p>В диаграммах последовательностей объекты представляются вертикальными прерывистыми линиями с именем объекта наверху. Временная ось также направлена сверху вниз. Таким образом, сообщения, посылаемые от одного объекта к другому, отображаются стрелками с указанием операции и параметров. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="sequence-diagram.png" alt="Диаграмма последовательностей"><div class="caption"><p>Диаграмма последовательностей </p></div></div></div><p>Сообщения могут быть либо синхронными, когда управление передаётся вызываемому объекту вплоть до момента окончания его работы, либо асинхронными, когда управление сразу же возвращается вызывающему объекту. Синхронные сообщения обозначаются вертикальным прямоугольником на стороне вызываемого объекта для отображения передачи управления в программе.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="collaboration-diagram"></a>Диаграммы кооперации</h3></div></div></div><p>Диаграммы кооперации показывают взаимодействия между объектами, участвующими в конкретной ситуации. Это более или менее повторяет информацию, отображаемую диаграммами последовательностей, но там основной упор делается на то, как взаимодействия проявляются во времени, а здесь выделяются связи между объектами и их топология.</p><p>На диаграммах кооперации сообщения, пересылаемые от одного объекта к другому, представляются в виде стрелок с указанием имени, параметров и последовательности сообщений. Диаграммы кооперации лучше всего подходят для отображения процесса работы программы или какой-либо ситуации. С помощью диаграмм этого типа возможно также быстро продемонстрировать или объяснить какой-либо процесс в логике программы. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="collaboration-diagram.png" alt="Диаграмма кооперации"><div class="caption"><p>Диаграмма кооперации </p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="state-diagram"></a>Диаграмма состояний</h3></div></div></div><p>Диаграммы состояний показывают различные состояния объекта в течение его времени жизни и причины, вызывающие их смену. </p><p>Диаграммы состояний рассматривают объекты как <span class="emphasis"><em>конечные автоматы</em></span>, которые могут быть в одном из нескольких конечных состояний. Конечные состояния могут изменяться с помощью конечного набора причин. Например, объект типа <span class="emphasis"><em>NetServer</em></span> может находиться в одном из следующих состояний: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Готовность</p></li><li class="listitem"><p>Ожидание</p></li><li class="listitem"><p>Обработка</p></li><li class="listitem"><p>Остановка</p></li></ul></div><p>а события, которые могут привести к смене объектом своего состояния, это:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Объект создан</p></li><li class="listitem"><p>Объект принял ожидаемое сообщение</p></li><li class="listitem"><p>Клиент запросил соединение по сети</p></li><li class="listitem"><p>Клиент прервал запрос</p></li><li class="listitem"><p>Запрос выполнен</p></li><li class="listitem"><p>Объект получил завершающее сообщение</p></li><li class="listitem"><p>и так далее</p></li></ul></div><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="state-diagram.png" alt="Диаграмма состояний"><div class="caption"><p>Диаграмма состояний </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="state"></a>Состояние</h4></div></div></div><p>Состояния являются ключевыми элементами диаграмм состояний. Состояния принадлежат ровно одному классу и представляют собой совокупность значений, которые могут принимать атрибуты класса. В <acronym class="acronym">UML</acronym> состояние описывает внутреннее состояние объекта одного определённого класса. </p><p>Следует отметить, что не стоит отображать на диаграмме состояний все состояния — отображайте только важные состояния, которые значительно влияют на работу объекта.</p><p>Существуют два особых типа состояний: «начало» и «конец». И вот почему: нет такого события, которое заставит объект возвратиться в состояние «начало», если он из него вышел; нет такого события, которое заставит объект выйти из состояния «конец», если он в него вошёл. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="activity-diagram"></a>Диаграмма деятельности</h3></div></div></div><p>Диаграммы деятельности описывают последовательность действий в системе с помощью видов деятельности. Диаграммы деятельности являются специальной формой диаграмм состояний, только в основном содержат виды деятельности. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="activity-diagram.png" alt="Диаграмма деятельности"><div class="caption"><p>Диаграмма деятельности </p></div></div></div><p>
</p><p>Диаграммы деятельности подобны процедурным диаграммам потока, с той разницей, что все виды деятельности напрямую присоединены к объектам.</p><p>Диаграммы деятельности всегда ассоциируются с <span class="emphasis"><em>классами</em></span>, <span class="emphasis"><em>методами</em></span> или <span class="emphasis"><em>вариантами действий</em></span>.</p><p>Диаграммы деятельности поддерживают как последовательные, так и параллельные действия. Параллельное выполнение представляется с помощью значков Fork/Wait. Для действий, выполняющихся параллельно, порядок, в котором они выполняются, не имеет значения (они могут выполняться одновременно или друг за другом).</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="activity"></a>Действие</h4></div></div></div><p>Действие представляет собой один шаг процесса. Одно действие представляет одно состояние системы с внутренним действием и, как минимум, с одним результатом действия. Действия могут иметь более одного результата, если они происходят при разных условиях. </p><p>Действия могут формировать иерархию, это означает, что действие может быть составлено из нескольких <span class="quote">«<span class="quote">мелких</span>»</span> действий. В этом случае входящие и исходящие переходы должны соответствовать входящим и исходящим переходам на детализированной диаграмме. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="helper-elements"></a>Вспомогательные элементы</h3></div></div></div><p>Существует несколько вспомогательных элементов в <acronym class="acronym">UML</acronym>, которые не имеют реального семантического значения для модели, но помогают внести ясность в диаграмму. Перечислим их: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Текстовые строки</p></li><li class="listitem"><p>Текстовые примечания и ссылки</p></li><li class="listitem"><p>Блоки</p></li></ul></div><p>Текстовые строки удобно использовать для добавления краткой текстовой информации в диаграмму, это свободно прикрепляемый текст, который не оказывает никакого влияния на модель. </p><p>Текстовые примечания следует использовать для добавления более детальной информации об объекте или о специфической ситуации. Текстовые примечания могут быть прикреплены к элементам <acronym class="acronym">UML</acronym>. </p><p>Блоки являются свободно размещаемыми прямоугольниками, которые могут быть использованы для группирования элементов диаграмм с целью улучшения читаемости. Они не несут никакой смысловой нагрузки для модели.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="component-diagram"></a>Диаграммы компонентов</h3></div></div></div><p>Диаграммы компонентов отображают компоненты программного обеспечения (компонентные технологии, такие как KParts, CORBA или Java Beans, или просто разделы системы, явно отличающиеся друг от друга) и сущности, из которых они возникли, например файлы с исходным кодом, библиотеки или таблицы баз данных.</p><p>Компоненты обладают интерфейсами (то есть абстрактными классами с методами), которые позволяют создавать ассоциации между компонентами.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-diagram"></a>Диаграммы развёртывания</h3></div></div></div><p>Диаграммы развёртывания отображают объекты, созданные во время выполнения программы, и их ассоциации. Они включают в себя узлы, которые являются физическими ресурсами, обычно одиночными компьютерами. Они также отображают интерфейсы и объекты.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="entity-relationship-diagram"></a>Диаграммы отношений сущностей</h3></div></div></div><p>Диаграммы отношений сущностей служат для концептуального проектирования приложений баз данных. Они отражают различные сущности (концепции) информационной системы и существующие между ними отношения и ограничения. Расширенные («улучшенные») диаграммы отношений сущностей позволяют также включить методы объектно-ориентированного проектирования. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="entity-relationship-diagram.png" alt="Диаграмма отношений сущностей"><div class="caption"><p>Диаграмма отношений сущностей </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="entity"></a>Сущность</h4></div></div></div><p><span class="emphasis"><em>Сущность</em></span> — это любая независимо существующая концепция в реальном мире. Она может представлять собой физически существующий объект (например, компьютер, робот) или являться объектом, существующим на понятийном уровне (например, курс в университете). Каждая сущность обладает набором атрибутов, которые описывают её свойства.</p><p><span class="emphasis"><em>Примечание:</em></span> для отображения диаграмм отношений сущностей не существует стандартных нотаций. В различной литературе по этой теме используются различные нотации. Концепции и нотации для используемых в Umbrello расширенных диаграмм отношений сущностей взяты из следующей книги: <span class="emphasis"><em>Elmasri R. and Navathe S. (2004). Fundamentals of Database Systems 4th edn. Addison Wesley</em></span> </p><p>В диаграмме отношений сущностей сущности представлены прямоугольниками с расположенным в верхней части именем сущности. Атрибуты сущности могут быть показаны в другом <span class="quote">«<span class="quote">отделении</span>»</span> внутри прямоугольника. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="entity.png" alt="Визуальное представление сущности в диаграмме отношений сущностей"><div class="caption"><p>Визуальное представление сущности в диаграмме отношений сущностей </p></div></div></div><p>
</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="entity-attribute"></a>Атрибуты сущности</h5></div></div></div><p>В диаграммах отношений сущностей названия атрибутов сущности показаны в другом отделении прямоугольника сущности, к которой они принадлежат. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="constraint"></a>Ограничения</h5></div></div></div><p>Ограничения на диаграммах отношений сущностей указывают относящиеся к данным ограничения в информационной схеме. </p><p>В Umbrello поддерживается четыре типа ограничений: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Первичный ключ:</em></span> набор атрибутов, объявленный как <span class="emphasis"><em>первичный ключ</em></span>, является уникальным для сущности. В сущности может присутствовать только один первичный ключ, и ни один из составляющих его атрибутов не может иметь значение NULL. </p></li><li class="listitem"><p><span class="emphasis"><em>Уникальный ключ:</em></span> набор атрибутов, объявленный как <span class="emphasis"><em>уникальный</em></span>, является уникальным для сущности. В сущности может присутствовать много уникальных ограничений. Составляющие ключ атрибуты могут иметь значение NULL. Уникальные ключи и первичные ключи уникальным образом идентифицируют строку в таблице (сущность).</p></li><li class="listitem"><p><span class="emphasis"><em>Внешний ключ:</em></span> внешний ключ — это ссылочное ограничение между двумя таблицами. Внешний ключ идентифицирует столбец или набор столбцов в одной (ссылающейся) таблице, который ссылается на столбец или набор столбцов в другой (упомянутой в ссылке) таблице. Столбцы в упомянутой в ссылке таблице должны формировать первичный ключ или уникальный ключ. </p></li><li class="listitem"><p><span class="emphasis"><em>Проверочное ограничение:</em></span> проверочное ограничение (также называется ограничением проверки таблицы) — это условие, которое определяет действительные данные при добавлении или обновлении записи в таблице реляционной базы данных. Проверочное ограничение применяется к каждой строке таблицы. Ограничение должно быть предикатом. Оно может относиться к одному или нескольким столбцам таблицы. </p><p>Пример: цена 
&gt;= 0 </p></li></ul></div><p>
</p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="extended-entity-relationship-concepts"></a>Концепции расширенных диаграмм отношений сущностей</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="specialization"></a>Специализация</h4></div></div></div><p>Специализация — это способ формирования новых сущностей на основе уже определённых сущностей. Новые (производные) сущности принимают (или наследуют) атрибуты уже существующих сущностей, которые называются базовыми. Этот способ предназначен для повторного использования существующих данных без их изменения или с небольшими изменениями.</p><p>В Umbrello возможно указать специализацию двух видов: «Разделение» и «Перекрытие».</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="disjoint-specialization"></a>Специализация «Разделение»</h5></div></div></div><p>Специализация «Разделение» указывает, что подклассы специализации должны быть разделёнными. Это означает, что сущность может быть членом не более чем одной производной сущности специализации</p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="disjoint-specialization.png" alt="Визуальное представление специализации «Разделение» в расширенной диаграмме отношений сущностей"><div class="caption"><p>Визуальное представление специализации «Разделение» в расширенной диаграмме отношений сущностей </p></div></div></div><p>
    </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="overlapping-specialization"></a>Специализация «Перекрытие»</h5></div></div></div><p>Когда на производные сущности не накладываются ограничения разделения, соответствующий набор сущностей считается имеющим специализацию «Перекрытие». Это означает, что одна и та же сущность реального мира может быть членом нескольких производных сущностей специализации</p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="overlapping-specialization.png" alt="Визуальное представление специализации «Перекрытие» в расширенной диаграмме отношений сущностей"><div class="caption"><p>Визуальное представление специализации «Перекрытие» в расширенной диаграмме отношений сущностей </p></div></div></div><p>
  </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="category"></a>Категория</h5></div></div></div><p>Производная сущность — это <span class="emphasis"><em>категория</em></span>, если она представляет собой набор объектов, который является подмножеством объединения индивидуальных типов сущностей. Категория моделируется в том случае, когда необходимо создать отдельное отношение суперкласс/подкласс с несколькими суперклассами, где суперклассы представляют различные типы сущностей. (Это очень похоже на множественное наследование в объектно-ориентированном программировании.) </p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="category.png" alt="Визуальное представление категории в расширенной диаграмме отношений сущностей"><div class="caption"><p>Визуальное представление категории в расширенной диаграмме отношений сущностей</p></div></div></div><p>
  </p></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-basics.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">След.</a></td></tr><tr><td class="prevCell">Основы <acronym class="acronym">UML</acronym> </td><td class="upCell">Основы <acronym class="acronym">UML</acronym></td><td class="nextCell"> Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="uml-elements.html">След.</a></td></tr><tr><td class="prevCell">Введение </td><td class="upCell"> </td><td class="nextCell"> Элементы <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="working-with-umbrello.html"><html><head><title>Глава 3. Работа в Umbrello UML Modeller</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="uml-elements.html" title="Элементы UML"><link rel="next" href="load-save.html" title="Создание, загрузка и сохранение моделей"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-elements.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="load-save.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="working-with-umbrello"></a>Глава 3. Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div></div></div><p>Данная глава познакомит вас с интерфейсом пользователя <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> и предоставит все необходимые сведения о моделировании. Все действия в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> доступны посредством меню и панели инструментов, но также интенсивно используются и контекстные меню. Щелчок правой кнопкой мыши практически по любому элементу рабочей области <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> или иерархического представления модели вызовет меню с наиболее полезными функциями, которые могут применяться к данному элементу. Некоторые пользователи это сначала может показаться немного неудобным, потому что они чаще используют меню или панели инструментов, но впоследствии данный метод значительно увеличит скорость работы. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-interface"></a>Интерфейс пользователя</h2></div></div></div><p>Главное окно <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> делится на три области, которые предоставляют полный обзор системы и быстрый доступ к различным диаграммам при работе над моделью. </p><p>Это следующие области:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Иерархия</p></li><li class="listitem"><p>Рабочая область</p></li><li class="listitem"><p>Окно документации и истории команд</p></li></ul></div><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="umbrello-ui.png" alt="Интерфейс пользователя Umbrello UML Modeller"><div class="caption"><p>Интерфейс пользователя <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="tree-view"></a>Иерархия</h3></div></div></div><p>Область иерархического представления модели располагается в левом верхнем углу окна приложения и отображает все диаграммы, классы, действующие лица и варианты использования, которые составляют модель. Иерархическое представление модели предоставляет обзор разрабатываемой модели в целом, одновременно позволяя быстро переключаться между элементами модели и размещать элементы модели на текущей диаграмме. </p><p>При работе над моделью с несколькими классами и диаграммами иерархическое представление модели возможно использовать, чтобы организовать элементы модели с помощью папок. Создавайте папки с помощью контекстного меню и затем перемещайте в них элементы иерархического представления модели, просто перетаскивая их мышью. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documentation-window"></a>Окно документации и истории команд</h3></div></div></div><p>Окно документации и истории команд расположено в левом нижнем углу <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> и предоставляет краткую информацию о выделенном объекте, а также историю команд рабочего сеанса. Окно документации специально сделано небольшим, чтобы просматриваемая информация по объекту не занимала много места на экране. Если понадобится просмотреть более подробную документацию по элементу, следует перейти к свойствам элемента с помощью контекстного меню. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="work-area"></a>Рабочая область</h3></div></div></div><p>Рабочая область — это основное окно приложения, в котором происходит вся работа с диаграммами модели. Рабочая область отображает текущую активную диаграмму. Одновременно может отображаться только одна диаграмма. </p></div></div><FILENAME filename="load-save.html"><html><head><title>Создание, загрузка и сохранение моделей</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><link rel="prev" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><link rel="next" href="edit-model.html" title="Редактирование моделей"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Создание, загрузка и сохранение моделей</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-umbrello.html">Пред.</a></td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-model.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="load-save"></a>Создание, загрузка и сохранение моделей</h2></div></div></div><p>Первое, что необходимо сделать для работы в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> — создать новую модель. При запуске <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> автоматически загружает последнюю использованную модель или создаёт новую, пустую модель (данное поведение зависит от параметров настройки <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>). </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="new-model"></a>Новая модель</h3></div></div></div><p>Для создания новой модели необходимо выбрать в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Создать</span></span> или нажать значок <span class="guiicon">Создать</span> на панели инструментов. Если работа над какой-либо моделью уже ведётся и изменения не были сохранены, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> предложит их сохранить. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="save-model"></a>Сохранение модели</h3></div></div></div><p>Для сохранения модели необходимо выбрать в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Сохранить</span></span> или нажать значок <span class="guiicon">Сохранить</span> на панели инструментов. Если модель требуется сохранить под другим именем, выберите в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Сохранить как</span></span>. </p><p>Для удобства <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> также предоставляет опцию автоматического сохранения изменений через определённый промежуток времени. Настройка этого параметра и периода времени доступна в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Настройка</span></span>.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="load-model"></a>Загрузка модели</h3></div></div></div><p>Для загрузки уже существующей модели необходимо выбрать в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Открыть</span></span> или нажать значок <span class="guiicon">Открыть</span> на панели инструментов. Чтобы перейти к моделям, которые использовались в последнее время, выберите в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> подменю <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Последние файлы</span></span>. </p><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> поддерживает одновременную работу только с одной моделью. Таким образом, если при работе с несохранённой моделью будет выполнена попытка загрузки другой модели, приложение выведет запрос на сохранение изменений. Возможно запустить несколько экземпляров <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, чтобы копировать и вставлять элементы модели из одного экземпляра приложения в другой. </p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-umbrello.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="edit-model.html">След.</a></td></tr><tr><td class="prevCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Редактирование моделей</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="edit-model.html"><html><head><title>Редактирование моделей</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><link rel="prev" href="load-save.html" title="Создание, загрузка и сохранение моделей"><link rel="next" href="add-remove-diagrams.html" title="Добавление и удаление диаграмм"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Редактирование моделей</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="load-save.html">Пред.</a></td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="edit-model"></a>Редактирование моделей</h2></div></div></div><p>В <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> существует два основных способа редактирования элементов модели: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Редактирование элементов напрямую через иерархическое представление модели;</p></li><li class="listitem"><p>Редактирование элементов модели через диаграмму.</p></li></ul></div><p>
</p><p>Контекстное меню различных элементов иерархического представления модели позволяет добавлять, удалять и изменять практически все элементы модели. Контекстное меню папок иерархического представления модели позволяет создавать различные типы диаграмм, а также, в зависимости от того, является ли текущая папка <span class="emphasis"><em>представлением вариантов использования</em></span> или <span class="emphasis"><em>логическим представлением</em></span>, создавать действующих лиц, варианты использования, классы и так далее. </p><p>Добавленный в модель новый элемент также возможно редактировать с помощью диалога свойств, который доступен при выборе в контекстном меню иерархического представления модели пункта <span class="emphasis"><em>Свойства</em></span>. </p><p>Также возможно редактировать модель, добавляя и удаляя элементы на диаграммах. Это рассматривается в последующих разделах. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="load-save.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">След.</a></td></tr><tr><td class="prevCell">Создание, загрузка и сохранение моделей </td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Добавление и удаление диаграмм</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="add-remove-diagrams.html"><html><head><title>Добавление и удаление диаграмм</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><link rel="prev" href="edit-model.html" title="Редактирование моделей"><link rel="next" href="edit-diagram.html" title="Редактирование диаграмм"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Добавление и удаление диаграмм</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-model.html">Пред.</a></td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="add-remove-diagrams"></a>Добавление и удаление диаграмм</h2></div></div></div><p><acronym class="acronym">UML</acronym>-модель состоит из набора <acronym class="acronym">UML</acronym>-элементов и связей между ними. Тем не менее, нельзя увидеть модель напрямую, для её просмотра используются <span class="emphasis"><em>диаграммы</em></span>. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="create-diagram"></a>Создание диаграмм</h3></div></div></div><p>Для создания новой диаграммы в модели просто выберите в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Диаграмма</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Создать</span></span>, выберите необходимый тип диаграммы и укажите его имя. Диаграмма будет создана, станет активной и отобразится в иерархическом представлении модели. </p><p>Следует помнить, что в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> широко используются контекстные меню: возможно щёлкнуть правой кнопкой мыши по папке в иерархическом представлении модели и выбрать соответствующий тип диаграммы с помощью пункта <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Создать</span></span> контекстного меню. Обратите внимание, что диаграммы вариантов использования возможно создавать только в папках представления вариантов использования, а другие типы диаграмм могут быть созданы только в папках логического представления. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="remove-diagram"></a>Удаление диаграмм</h3></div></div></div><p>Для удаления диаграммы из модели следует выбрать соответствующую диаграмму и затем выбрать в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Диаграмма</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Удалить диаграмму</span></span>. Также возможно открыть в иерархическом представлении модели контекстное меню диаграммы и выбрать пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Удалить</span></span>. </p><p>Так как удаление диаграммы является серьёзным действием, которое может привести к потере данных, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> выведет запрос на подтверждение операции удаления перед её выполнением. После удаления диаграммы и сохранения файла проекта будет невозможно восстановить удалённую информацию. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="rename-diagram"></a>Переименование диаграмм</h3></div></div></div><p>Если требуется изменить имя существующей диаграммы, откройте в иерархическом представлении модели контекстное меню диаграммы и выберите пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Переименовать</span></span>. </p><p>Также возможно переименовать диаграмму с помощью диалога свойств диаграммы (чтобы его вызвать, выберите в контекстном меню диаграммы пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Свойства</span></span>) или двойного щелчка по диаграмме в иерархическом представлении модели. </p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-model.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">След.</a></td></tr><tr><td class="prevCell">Редактирование моделей </td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Редактирование диаграмм</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="edit-diagram.html"><html><head><title>Редактирование диаграмм</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Глава 3. Работа в Umbrello UML Modeller"><link rel="prev" href="add-remove-diagrams.html" title="Добавление и удаление диаграмм"><link rel="next" href="code-import-generation.html" title="Глава 4. Импорт и генерация кода"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Редактирование диаграмм</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="add-remove-diagrams.html">Пред.</a></td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="edit-diagram"></a>Редактирование диаграмм</h2></div></div></div><p>При работе с диаграммой <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> применяет нескольких простых правил, например, какие элементы могут размещаться на диаграммах определённого типа или какие взаимоотношения могут быть между ними. Если пользователь является экспертом в <acronym class="acronym">UML</acronym>, то он, скорее всего, даже не обратит на это внимание, но такие подсказки пригодятся новичкам при создании стандартных диаграмм. </p><p>После создания диаграмм их следует отредактировать. Обратите внимание на разницу между редактированием диаграммы и редактированием <span class="emphasis"><em>модели</em></span>. Как было уже сказано, диаграммы являются <span class="emphasis"><em>представлениями</em></span> модели. Например, если пользователь создаёт класс путём редактирования диаграммы класса, то он одновременно редактирует и диаграмму, и модель. Если же пользователь изменяет цвет или другие параметры отображения класса на диаграмме класса, то он редактирует только диаграмму — в модели ничего не меняется. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="insert-elements"></a>Вставка элементов</h3></div></div></div><p>Первое, что пользователь делает при редактировании новой диаграммы — вставляет в неё элементы (классы, действующие лица, варианты использования и так далее). Существует два основных способа вставки:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Перемещение существующих элементов в модель из иерархического представления модели</p></li><li class="listitem"><p>Создание новых элементов в модели и одновременное добавление их в диаграмму с помощью кнопок панели инструментов</p></li></ul></div><p>Для вставки элементов, уже существующих в модели, просто перетащите их из иерархического представления модели на их место на диаграмме. Элементы возможно перемещать по диаграмме, выделяя их кнопкой выбора на панели инструментов. </p><p>Второй метод добавления элементов в диаграмму — использование кнопок панели инструментов (обратите внимание, что это приведёт к добавлению элементов в модель). </p><p>Панель инструментов по умолчанию находится в верхней части окна. Набор инструментов, представленных на этой панели в виде кнопок, зависит от типа текущей диаграммы. На панели активирована кнопка текущего инструмента. Чтобы переключиться на инструмент выбора, нажмите клавишу <span class="keycap"><strong>Esc</strong></span>. </p><p>При выборе инструмента на панели (например, инструмента вставки классов) указатель мыши меняет свой вид на перекрестье, и становится возможно вставлять элементы данного типа в модель одиночными щелчками по диаграмме. Обратите внимание, что элементы в <acronym class="acronym">UML</acronym> должны иметь <span class="emphasis"><em>уникальные имена</em></span>. Таким образом, если на одной диаграмме модели есть класс с именем <span class="quote">«<span class="quote">ClassA</span>»</span>, и будет выполнена попытка создать на другой диаграмме новый класс с таким же именем, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> не позволит этого сделать; потребуется назначить классу другое уникальное имя. Инструмент вставки классов не подходит для добавления <span class="emphasis"><em>того же</em></span> элемента на диаграмму, вместо этого следует перетащить класс на диаграмму из иерархического представления модели. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="delete-elements"></a>Удаление элементов</h3></div></div></div><p>Возможно удалить любой элемент диаграммы, выбрав в его контекстном меню пункт  <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Удалить</span></span>. </p><p>Следует ещё раз подчеркнуть, что существует <span class="emphasis"><em>большая</em></span> разница между удалением объекта из диаграммы и удалением объекта из модели. Если вы удаляете объект из диаграммы, то он удаляется только из определённой диаграммы: элемент продолжает оставаться частью вашей модели, и это действие никак не влияет на остальные диаграммы. С другой стороны, если вы удаляете элемент из дерева модели, то происходит удаление элемента из <span class="emphasis"><em>модели</em></span>. Так как данный элемент больше не присутствует в модели, он автоматически удаляется из всех диаграмм, где он присутствовал. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-elements"></a>Редактирование элементов</h3></div></div></div><p>Большинство <acronym class="acronym">UML</acronym>-элементов в модели и диаграммах возможно изменить, открыв с помощью контекстного меню нужного элемента диалог «Свойства» и выбрав в нём необходимые параметры. Каждый элемент имеет диалог, содержащий несколько страниц с соответствующими параметрами элемента. Для некоторых элементов, например, для действующих лиц, доступно изменение только имени элемента и документации, в то время как для других элементов, таких как классы, доступно изменение их свойств и методов, выбор того, что следует отображать на диаграмме (всю сигнатуру методов или только их имена, и так далее), и даже цветов, которые следует использовать для  линии и заливки представления класса на диаграмме. </p><p>Диалог свойств <acronym class="acronym">UML</acronym>-элемента также возможно открыть двойным щелчком по  элементу, если используется инструмент выбора (стрелка). </p><p>Обратите внимание, что доступ к свойствам элемента также возможно получить с помощью его контекстного меню в иерархическом представлении модели. Это позволяет также изменять свойства диаграмм, например управлять видимостью сетки. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-classes"></a>Редактирование классов</h3></div></div></div><p>Хотя редактирование свойств всех объектов уже рассматривалось в предыдущем разделе, классы заслуживают отдельного упоминания, потому что они отличаются от остальных элементов своей сложностью и имеют большее количество опций, чем большинство других <acronym class="acronym">UML</acronym>-элементов. </p><p>В диалоге редактирования свойств класса можно изменить всё, от используемого цвета до методов и свойств, которые он имеет. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-general-settings"></a>Основные параметры класса</h4></div></div></div><p>Назначение страницы основных параметров диалога свойств очевидно. На ней возможно изменять имя класса, область видимости, документацию и так далее. Эта страница всегда доступна. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-attributes-settings"></a>Настройка атрибутов класса</h4></div></div></div><p>На странице настройки атрибутов возможно добавлять, редактировать и удалять атрибуты (переменные) класса. Возможно перемещать атрибуты вверх и вниз по списку с помощью стрелок. Эта страница всегда доступна. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-operations-settings"></a>Настройка операций класса</h4></div></div></div><p>Как и на странице настройки атрибутов, на странице настройки методов возможно добавлять, редактировать и удалять методы класса. При добавлении или редактировании метода следует ввести основные данные в диалоге <span class="emphasis"><em>Свойства операции</em></span>. Если необходимо добавить параметры для метода, следует нажать кнопку <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Новый параметр</span></span>, которая вызовет появление диалога <span class="emphasis"><em>Свойства параметра</em></span>. Эта страница всегда доступна. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-template-settings"></a>Настройка шаблонов класса</h4></div></div></div><p>Данная страница позволяет добавлять шаблоны классов, которые являются неопределёнными классами или типами данных. В Java 1.5 их будут обозначать термином <span class="quote">«<span class="quote">Generic</span>»</span>. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations-page"></a>Страница ассоциаций класса</h4></div></div></div><p>Страница <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Ассоциации класса</span></span> отображает все ассоциации данного класса на текущей диаграмме. Двойной щелчок по ассоциации показывает её свойства, и, в зависимости от типа ассоциации, будет возможно изменить некоторые параметры, например, множественность или имя роли. Если ассоциация не позволяет изменение этих параметров, то с помощью диалога свойств ассоциации будет возможно изменять только документацию ассоциации. </p><p>Данная страница доступна только в том случае, если диалог свойств класса был вызван из диаграммы. При открытии диалога свойств класса из контекстного меню иерархического представления модели эта страница будет недоступна. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-display-page"></a>Страница отображения класса</h4></div></div></div><p>На странице <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Параметры отображения</span></span> возможно указать, что следует показывать на диаграмме. Класс может быть показан только в виде прямоугольника с именем класса в нём (что особенно полезно при наличии множества классов на диаграмме, или если на текущий момент не важна информация по классу) или с отображением всей информации по классу. </p><p>В зависимости от объёма информации, которая должна отображаться, возможно активировать соответствующие опции на данной странице. Изменения, вносимые здесь, влияют только на <span class="emphasis"><em>отображение</em></span> диаграммы. Это означает, что настройка <span class="quote">«<span class="quote">скрытия</span>»</span> методов класса приведёт к тому, что методы данного класса не будут показаны на диаграмме, но останутся частью модели. Данная страница доступна только в том случае, если диалог свойств класса был вызван из диаграммы. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-color-page"></a>Страница стиля класса</h4></div></div></div><p>На странице <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Стиль виджета</span></span> возможно задать цвета для линий и заливки объекта. Очевидно, что параметры на данной странице имеют смысл только для классов, показанных на диаграммах; эта страница недоступна при открытии диалога свойств класса в режиме иерархического предоставления. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="associations"></a>Ассоциации</h3></div></div></div><p>Ассоциации связывают два <acronym class="acronym">UML</acronym>-элемента друг с другом. Обычно ассоциации определяются между двумя классами, но некоторые типы ассоциаций могут также существовать между вариантами использования и действующими лицами. </p><p>Для создания ассоциации выберите соответствующий инструмент на панели инструментов (общая ассоциация, обобщение, агрегация и так далее) и щёлкните сначала по первому, а потом по второму элементу, участвующему в ассоциации. Не следует пытаться перетащить мышью первый элемент на второй, это ни к чему не приведёт. </p><p>При попытке создать ассоциацию, противоречащую спецификации <acronym class="acronym">UML</acronym>, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> отменит это действие и выведет сообщение об ошибке. Это произойдёт, например, если при уже существующем обобщении от класса A к классу B предпринимается попытка создать обобщение от класса B к классу A. </p><p>У ассоциации есть контекстное меню. При необходимости удалить ассоциацию просто выберите в нём пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Удалить</span></span>. С помощью контекстного меню также возможно открыть диалог свойств элемента (пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Свойства</span></span>) и, в зависимости от типа ассоциации, изменить такие атрибуты, как роли и множественность. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchor-points"></a>Точки прикрепления</h4></div></div></div><p>По умолчанию ассоциации рисуются в виде прямой линии, соединяющей два объекта в диаграмме. </p><p>Добавление точки прикрепления выполняется с помощью <span class="mousebutton">двойного</span> щелчка по линии ассоциации. Появившуюся точку прикрепления (при выборе линии ассоциации она отображается в виде голубой точки) возможно перемещать для придания нужной формы линии ассоциации. </p><p>Если необходимо убрать точку прикрепления из линии ассоциации, просто сделайте по ней двойной щелчок. </p><p>Обратите внимание, что редактирование свойств ассоциаций возможно выполнить только через их контекстное меню. Ассоциации отличаются от других <acronym class="acronym">UML</acronym>-элементов тем, что при двойном щелчке по ним создаётся точка прикрепления, а не появляется диалог редактирования свойств элемента. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="notes"></a>Примечания, текст и блоки</h3></div></div></div><p>Примечания, строки текста и блоки (свободно размещаемые прямоугольники для визуальной группировки) являются элементами, которые могут быть размещены на диаграммах любого типа и не несут смысловой нагрузки для модели, но повышают читаемость диаграмм. </p><p>Для добавления примечания или строки текста выберите соответствующий инструмент на панели инструментов и один раз щёлкните там, где следует разместить элемент на диаграмме. Изменить текст элемента возможно через контекстное меню или, в случае примечания, двойным щелчком по нему. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchors"></a>Ссылки</h4></div></div></div><p>Ссылки используются для прикрепления текстового примечания к другому <acronym class="acronym">UML</acronym>-элементу. Например, если текст обычно используется для описания или комментирования класса или ассоциации, то ссылка позволяет явным образом <span class="quote">«<span class="quote">прикрепить</span>»</span> примечание к определённому элементу. </p><p>Для добавления ссылки, которая свяжет примечание с другим <acronym class="acronym">UML</acronym>-элементом, используйте соответствующий инструмент на панели инструментов. Щёлкните по примечанию, а затем по <acronym class="acronym">UML</acronym>-элементу, к которому следует прикрепить данное примечание. </p></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="add-remove-diagrams.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">След.</a></td></tr><tr><td class="prevCell">Добавление и удаление диаграмм </td><td class="upCell">Работа в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Импорт и генерация кода</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-elements.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="load-save.html">След.</a></td></tr><tr><td class="prevCell">Элементы <acronym class="acronym">UML</acronym> </td><td class="upCell"> </td><td class="nextCell"> Создание, загрузка и сохранение моделей</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="code-import-generation.html"><html><head><title>Глава 4. Импорт и генерация кода</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="edit-diagram.html" title="Редактирование диаграмм"><link rel="next" href="code-import.html" title="Импорт кода"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Импорт и генерация кода</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-diagram.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="code-import.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="code-import-generation"></a>Глава 4. Импорт и генерация кода</h1></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> — средство <acronym class="acronym">UML</acronym>-моделирования, которое помогает <span class="emphasis"><em>анализировать и проектировать</em></span> системы. Тем не менее, для обеспечения перехода от проекта к его <span class="emphasis"><em>реализации</em></span> <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> позволяет сгенерировать исходный код для различных языков программирования. Если потребуется использовать <acronym class="acronym">UML</acronym> для существующего проекта на C++, с помощью <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> возможно создать модель системы на основе исходного кода путём его анализа и импорта обнаруженных классов. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-generation"></a>Генерация кода</h2></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> позволяет генерировать исходный код для различных языков программирования на основе вашей модели <acronym class="acronym">UML</acronym>, помогая вам начать реализацию вашего проекта. Сгенерированный код состоит из объявлений классов с их методами и атрибутами, вам остаётся только <span class="quote">«<span class="quote">заполнить пустые места</span>»</span> для реализации функциональности классов. </p><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2 поставляется с поддержкой генерации кода для ActionScript, Ada, C++, C#, D, IDL, <span class="trademark">Java</span>™, JavaScript, MySQL, Pascal, Perl, PHP, PHP5, PostgreSQL, Python, Ruby, Tcl, Vala и XMLSchema. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="generate-code"></a>Генерация кода</h3></div></div></div><p>Для генерации кода с помощью <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> сначала необходимо создать или загрузить модель, содержащую хотя бы один класс. При необходимости работы с исходным кодом выберите в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Код</span></span> пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Мастер генерации кода</span></span> для запуска мастера, который позволит пошагово выполнить процесс генерации кода. </p><p>Первым шагом будет указание классов, для которых требуется сгенерировать код. По умолчанию выбираются все классы вашей модели. Классы, для которых не требуется генерировать код, следует переместить в список, расположенный в левой части окна. </p><p>Следующим шагом будет модификация параметров генератора кода. Доступны следующие опции: </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generation-options.png" alt="Параметры для генерации кода в Umbrello UML Modeller"><div class="caption"><p>Параметры для генерации кода в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="generation-options"></a>Параметры генерации</h4></div></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm890"></a>Подробность комментариев</h5></div></div></div><p>В режиме <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Вставлять комментарии в документацию, даже если они пустые</span></span> генератор кода будет писать комментарии вида /** тра-ля-ля */, даже если блоки комментариев пустые. Если добавить документацию в классы, методы или атрибуты модели, генератор кода запишет эти комментарии как документацию для <span class="application">Doxygen</span> независимо от значения этой опции. Но если эта опция включена, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> запишет блоки комментариев для всех классов, методов и атрибутов, даже если никакой документации в модели не было. В этом случае следует задокументировать классы позднее прямо в исходном коде. </p><p>Опция <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Вставлять комментарии для секций, даже если они пусты</span></span> указывает <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> записывать комментарии в исходный код для разграничения различных секций класса. Например, <span class="quote">«<span class="quote">public methods</span>»</span> или <span class="quote">«<span class="quote">Attributes</span>»</span> перед соответствующими секциями. Если вы включите данную опцию, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> будет записывать комментарии для всех секций класса, даже если некоторые из них будут пустыми. Например, будет записан комментарий <span class="quote">«<span class="quote">protected methods</span>»</span>, даже если в вашем классе нет методов, объявленных как <span class="quote">«<span class="quote">protected</span>»</span>. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm907"></a>Папки</h5></div></div></div><p>Опция <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Сохранять сгенерированные файлы в папку</span></span>. Здесь следует указать папку, в которую <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> поместит сгенерированный исходный код. </p><p>Опция <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Подключать заголовочные файлы из папки</span></span> позволяет вставить заголовок в начало каждого сгенерированного файла. Заголовочные файлы могут содержать сведения об авторских правах или лицензии, а также переменные, вычисляемые во время генерации кода. Ознакомление с заголовочными файлами, поставляемыми с <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, позволит понять, как использовать эти переменные для указания имени пользователя или текущей даты во время генерации кода. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm917"></a>Политика замены</h5></div></div></div><p>Данная опция указывает Umbrello, что следует делать, если создаваемый файл уже существует. Umbrello <span class="emphasis"><em>не позволяет изменять существующие исходные файлы</em></span>, таким образом, необходимо сделать выбор между перезаписью существующего файла, отменой генерации конкретного файла или выбором другого имени файла. Если принято решение выбрать другое имя файла, Umbrello добавит суффикс к текущему имени файла. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm921"></a>Язык</h5></div></div></div><p>По умолчанию <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> будет генерировать код на языке, который указан в качестве активного языка, но мастер генерации кода позволяет указать другой язык. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="generation-wizard-generation"></a>Генерация кода в мастере генерации</h4></div></div></div><p>Третий и последний шаг помощника показывает состояние процесса генерации кода. Остаётся только нажать кнопку «Генерировать», чтобы получить классы в виде исходного кода. </p><p>Следует отметить, что параметры, которые вы выбрали в мастере генерации кода, действительны только для текущего сеанса. При следующем запуске мастера потребуется заново указать все опции (папку с заголовочными файлами, политику замены и так далее). Возможно настроить значения по умолчанию в разделе <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Генерация кода</span></span> параметров настройки <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, доступном в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Настройка</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Настроить <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>...</span></span> </p><p>Если после настройки параметров генерации кода следует сгенерировать код без использования помощника, выберите пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Генерировать весь код</span></span> в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Код</span></span>. В этом случае будет сгенерирован код для всех классов модели с использованием текущих значений параметров (включая папку вывода и политику замены, так что используйте эту функцию с осторожностью). </p></div></div></div><FILENAME filename="code-import.html"><html><head><title>Импорт кода</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="code-import-generation.html" title="Глава 4. Импорт и генерация кода"><link rel="prev" href="code-import-generation.html" title="Глава 4. Импорт и генерация кода"><link rel="next" href="other-features.html" title="Глава 5. Дополнительные возможности"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Импорт кода</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import-generation.html">Пред.</a></td><td class="upCell">Импорт и генерация кода</td><td class="nextCell"><a accesskey="n" href="other-features.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-import"></a>Импорт кода</h2></div></div></div><p>С помощью <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> возможно импортировать исходный код существующих проектов для облегчения построения моделей систем. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2 поддерживает исходный код на языке ActionScript, Ada, C++, C#, D, IDL, <span class="trademark">Java</span>™, Javascript, MySQL, Pascal, PHP и Vala. </p><p>Для импорта классов в модель выберите пункт <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Мастер импорта кода...</span></span> в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Код</span></span>. В диалоге выбора файлов укажите файлы, содержащие объявления классов, и нажмите кнопку <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Далее 
&gt;</span></span>, затем <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Начать импорт</span></span> и <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Завершить</span></span>. Классы будут импортированы и появятся в виде элементов модели в дереве модели. Следует отметить, что <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> не создаёт никакой диаграммы для отображения классов, они просто импортируются в модель, что позволяет в дальнейшем использовать их при построении любых диаграмм. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-import.png" alt="Меню для импорта исходного кода в Umbrello UML Modeller"><div class="caption"><p>Меню для импорта исходного кода в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><p>
</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import-generation.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="other-features.html">След.</a></td></tr><tr><td class="prevCell">Импорт и генерация кода </td><td class="upCell">Импорт и генерация кода</td><td class="nextCell"> Дополнительные возможности</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-diagram.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="code-import.html">След.</a></td></tr><tr><td class="prevCell">Редактирование диаграмм </td><td class="upCell"> </td><td class="nextCell"> Импорт кода</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="other-features.html"><html><head><title>Глава 5. Дополнительные возможности</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="code-import.html" title="Импорт кода"><link rel="next" href="settings.html" title="Глава 6. Настройка"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Дополнительные возможности</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="other-features"></a>Глава 5. Дополнительные возможности</h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idm973"></a>Дополнительные возможности <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h2></div></div></div><p>В данной главе кратко освещаются некоторые дополнительные особенности <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="copying-as-png"></a>Копирование объектов в виде изображений в формате PNG</h3></div></div></div><p>Кроме стандартных действий вырезания, копирования и вставки, с помощью которых возможно обмениваться объектами между диаграммами, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> позволяет копировать объекты как изображения формата PNG, которые затем возможно вставить в документы другого типа. Для этого следует просто выделить объект на диаграмме (класс, действующее лицо и так далее) и скопировать его (с помощью комбинации клавиш <span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>C</strong></span> или контекстного меню), затем открыть документ <span class="application">Calligra Words</span> (или любую другую программу, в документы которой возможно вставлять изображения) и выбрать <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Вставить</span></span>. Экспорт элементов диаграммы в виде изображений — очень полезная возможность. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="export-as-png"></a>Экспортирование в виде изображения</h3></div></div></div><p>Также возможно экспортировать всю диаграмму в виде изображения. Для этого следует выделить диаграмму и выбрать элемент <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Экспорт в изображение...</span></span> в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Диаграмма</span></span>. </p><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Экспорт диаграмм в виде изображений...</span></span> в меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> позволяет экспортировать сразу несколько диаграмм. Также возможно указать разрешение изображений, что позволяет обеспечить достаточную их чёткость. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="printing"></a>Печать</h3></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> позволяет распечатывать отдельные диаграммы. Нажатие кнопки <span class="guiicon">Печать</span> на панели инструментов приложения или выбор элемента <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Печать</span></span> из меню <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Файл</span></span> вызовет стандартный диалог печати <span class="orgname">KDE</span>, с помощью которого вы сможете распечатать ваши диаграммы. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="logical-folders"></a>Логические папки</h3></div></div></div><p>Для лучшей организации модели, особенно для больших проектов, возможно создавать логические папки в дереве модели: выберите в контекстном меню стандартных каталогов дерева пункт  <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Создать</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Папка</span></span>. Папки могут быть вложенными; объекты возможно перемещать, перетаскивая их мышкой из одной папки в другую. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="folders.png" alt="Организация модели с помощью логических папок в Umbrello UML Modeller"><div class="caption"><p>Организация модели с помощью логических папок в <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="settings.html">След.</a></td></tr><tr><td class="prevCell">Импорт кода </td><td class="upCell"> </td><td class="nextCell"> Настройка</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="settings.html"><html><head><title>Глава 6. Настройка</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="other-features.html" title="Глава 5. Дополнительные возможности"><link rel="next" href="font-settings.html" title="Настройка шрифтов"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Настройка</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="other-features.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="font-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="settings"></a>Глава 6. Настройка</h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="general-settings"></a>Основные параметры</h2></div></div></div><p>
    </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="general-settings.png" alt="Параметры на вкладке «Основные параметры»"><div class="caption"><p>Параметры на вкладке «Основные параметры» </p></div></div></div><p>
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="misc-settings"></a>Разное</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить запись действий для отмены</span></span> позволяет отменить предыдущее действие.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Использовать новые генераторы классов C++, Java и Ruby</span></span> позволяет пользователю выбрать старый или новый генератор кода.</p></li><li class="listitem"><p>Если флажок <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Печатать колонтитулы и номера страниц</span></span> установлен, при печати диаграммы будут напечатаны колонтитулы и номера страниц.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Использовать вкладки</span></span> позволяет работать сразу с несколькими диаграммами, открывая их во вкладках.</p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="autosave-settings"></a>Автосохранение</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить автосохранение</span></span> позволяет включить или отключить автоматическое сохранение файла.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Интервал автосохранения, мин</span></span> позволяет указать интервал времени между последовательными процедурами автосохранения файла.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Расширение автосохранения</span></span> по умолчанию установлен в значение «.xmi», но при необходимости это значение возможно изменить.</p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="startup-settings"></a>Запуск приложения</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Если флажок <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Открыть последний проект</span></span> установлен, при запуске программы всегда будет загрузаться последний рабочий проект.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Диаграмма по умолчанию для нового проекта</span></span> позволяет выбрать тип диаграммы UML для использования в новом проекте.</p></li><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Язык по умолчанию</span></span> позволяет задать используемый по умолчанию язык программирования.</p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="notifications-settings"></a>Уведомления</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить все сообщения</span></span> позволяет включить показ всех уведомлений или только их ограниченного набора.</p></li><li class="listitem"><p>Установка флажка <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить сообщения, связанные с удалением ассоциации</span></span> обеспечит получение всех сообщений этого типа.</p></li><li class="listitem"><p>Установка флажка <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить сообщения, связанные с удалением диаграммы</span></span> обеспечит получение всех сообщений этого типа.</p></li></ul></div></div></div><FILENAME filename="font-settings.html"><html><head><title>Настройка шрифтов</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="settings.html" title="Глава 6. Настройка"><link rel="next" href="ui-settings.html" title="Интерфейс пользователя"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Настройка шрифтов</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="ui-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="font-settings"></a>Настройка шрифтов</h2></div></div></div><p>
    </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="font-settings.png" alt="Параметры на вкладке «Настройка шрифтов»"><div class="caption"><p>Параметры на вкладке «Настройка шрифтов» </p></div></div></div><p>
</p><p>Эти параметры определяют свойства текста в диаграммах. Возможно выбрать гарнитуру и размер шрифта.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="ui-settings.html">След.</a></td></tr><tr><td class="prevCell">Настройка </td><td class="upCell">Настройка</td><td class="nextCell"> Интерфейс пользователя</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="ui-settings.html"><html><head><title>Интерфейс пользователя</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="font-settings.html" title="Настройка шрифтов"><link rel="next" href="class-settings.html" title="Параметры класса"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Интерфейс пользователя</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="font-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="class-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="ui-settings"></a>Интерфейс пользователя</h2></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="user-interface-settings.png" alt="Параметры на вкладке «Интерфейс пользователя»"><div class="caption"><p>Параметры на вкладке «Интерфейс пользователя» </p></div></div></div><p>
    </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ui-general"></a>Общие</h3></div></div></div><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Интерфейс пользователя справа налево</span></span> настраивает интерфейс для языков с написанием справа налево. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ui-associations"></a>Ассоциации</h3></div></div></div><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Использовать ломаные соединительные линии</span></span> позволяет изгибать соединительные линии под любым углом. </p><p>Параметр <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Создавать новые соединительные линии как</span></span> позволяет изменить стиль соединительных линий. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="ui-color"></a>Цвет</h3></div></div></div><p>В разделе параметров цвета возможно настроить цвет текста, линий, заливки, сетки и фона, а также задать ширину линий.</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="font-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="class-settings.html">След.</a></td></tr><tr><td class="prevCell">Настройка шрифтов </td><td class="upCell">Настройка</td><td class="nextCell"> Параметры класса</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="class-settings.html"><html><head><title>Параметры класса</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="ui-settings.html" title="Интерфейс пользователя"><link rel="next" href="code-importer-settings.html" title="Параметры импорта кода"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Параметры класса</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="ui-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="code-importer-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="class-settings"></a>Параметры класса</h2></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class-settings.png" alt="Параметры на вкладке «Параметры класса»"><div class="caption"><p>Параметры на вкладке «Параметры класса» </p></div></div></div><p>
    </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="show-class-settings"></a>Показать</h3></div></div></div><p>В разделе «Показать» представлены параметры, которые позволяют выбрать характеристики класса для показа в диаграмме классов.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="starting-scope-class-settings"></a>Начальная область видимости</h3></div></div></div><p>Возможно выбрать видимость атрибутов и операций по умолчанию (публичные, приватные или защищённые).</p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="ui-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="code-importer-settings.html">След.</a></td></tr><tr><td class="prevCell">Интерфейс пользователя </td><td class="upCell">Настройка</td><td class="nextCell"> Параметры импорта кода</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="code-importer-settings.html"><html><head><title>Параметры импорта кода</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="class-settings.html" title="Параметры класса"><link rel="next" href="code-generation-settings.html" title="Генерация кода"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Параметры импорта кода</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="class-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="code-generation-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-importer-settings"></a>Параметры импорта кода</h2></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-import-settings.png" alt="Параметры на вкладке «Параметры импорта кода»"><div class="caption"><p>Параметры на вкладке «Параметры импорта кода» </p></div></div></div><p>
    </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="include-search-paths-settings"></a>Пути поиска включений</h3></div></div></div><p>Рекомендуется улучшить поиск, добавив переменную среды UMBRELLO_INCPATH.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="cpp-import-settings"></a>Импорт C++</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Для каждого импортированного файла создать артефакт в диаграмме компонентов</span></span> — созданный артефакт затем возможно перетащить в представление диаграммы классов, где вместе с атрибутами и функциями каждого файла легко просмотреть и зависимости.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Разрешать зависимости (замедляет процесс импорта)</span></span> — обеспечивает разрешение зависимостей для всех файлов, которые затем будут показаны в зависимостях классов в диаграмме файлов.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Включить стандарт C++11 (экспериментальная возможность)</span></span> — экспериментальная возможность для обеспечения соответствия стандарту C++11. Снимите флажок, если такое соответствие не требуется.</p></li></ul></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="class-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="code-generation-settings.html">След.</a></td></tr><tr><td class="prevCell">Параметры класса </td><td class="upCell">Настройка</td><td class="nextCell"> Генерация кода</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="code-generation-settings.html"><html><head><title>Генерация кода</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="code-importer-settings.html" title="Параметры импорта кода"><link rel="next" href="code-viewer-settings.html" title="Просмотр кода"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Генерация кода</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-importer-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="code-viewer-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-generation-settings"></a>Генерация кода</h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="code-gen-settings-general-tab"></a>Вкладка «Общие» параметров генерации кода</h3></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-generation-general-settings.png" alt="Параметры на вкладке «Общие» параметров генерации кода"><div class="caption"><p>Параметры на вкладке «Общие» параметров генерации кода </p></div></div></div><p>
    </p><p>Umbrello UML Modeller позволяет генерировать исходный код для различных языков программирования на основе модели, помогая начать реализацию проекта. Сгенерированный код состоит из объявлений классов с их методами и атрибутами; остаётся только «заполнить пустые места» для реализации функциональности классов.</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-gen-language-settings"></a>Язык</h4></div></div></div><p>Выберите язык программирования для использования в проектах. Доступные варианты: ActionScript, Ada, C++, C#, D, IDL, Java, JavaScript, MYSQL, Pascal, Perl, PHP, PHP5, PastgreSQL, Python, Ruby, SQL, Tcl, Vala и XMLSchema.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-generation-folders-settings"></a>Папки</h4></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Сохранять сгенерированные файлы в папку</span></span> — укажите в поле редактирования ту папку, в которой следует сохранять сгенерированные файлы, или нажмите кнопку «Обзор...» для выбора пути.</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Подключать заголовочные файлы из папки</span></span> — если этот флажок установлен, возможно указать путь в поле редактирования или выбрать его с помощью кнопки «Обзор...».</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-generation-overwrite-settings"></a>Политика замены</h4></div></div></div><p>Этот параметр определяет, что происходит, если в папке генерации кода обнаруживается файл с тем же названием, что и у созданного файла. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Заменять</span></span> файл без предупреждения или предложения выбрать другой вариант.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Спросить</span></span>, следует ли перезаписать файл или переименовать его.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Выбрать другое имя</span></span>, если файл уже существует (переименовать его путём добавления суффикса).</p></li></ul></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="code-gen-settings-format-tab"></a>Вкладка «Оформление» параметров генерации кода</h3></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-generation-formatting-settings.png" alt="Параметры на вкладке «Оформление» параметров генерации кода"><div class="caption"><p>Параметры на вкладке «Оформление» параметров генерации кода </p></div></div></div><p>
    </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-gen-formatting-comment-verbosity"></a>Подробность комментариев</h4></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Вставлять комментарии в документацию, даже если они пусты</span></span> — создаёт комментарии для классов и функций, даже если они являются пустыми.</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Вставлять комментарии для секций, даже если они пусты</span></span> — записывает комментарии для приватных, защищённых и открытых секций, даже если они пусты.</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-gen-formatting-lines"></a>Строки</h4></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Тип отступов</span></span> — позволяет выбрать один из вариантов создания отступов (без отступов, табуляция или пробел).</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Количество символов</span></span> — позволяет пользователю указать количество пробелов для создания отступов с помощью табуляции или пробелов.</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Конец строки</span></span> — позволяет выбрать вариант конца строки (в стиле *NIX, Windows или Mac).</p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="code-gen-settings-language-options"></a>Вкладка «Языки программирования» параметров генерации кода</h3></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-generation-language-general.png" alt="Параметры на вкладке «Языки программирования» параметров генерации кода"><div class="caption"><p>Параметры на вкладке «Языки программирования» параметров генерации кода </p></div></div></div><p>
    </p><p>Содержимое этой страницы зависит от языка программирования, выбранного на вкладке «Общие». В настоящее время доступны параметры только для языка C++.</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="code-gen-settings-language-options-cpp"></a>Генерация кода C++</h4></div></div></div><p></p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="code-gen-settings-language-options-documentation"></a>Документация</h5></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Стиль</span></span> — позволяет выбрать вариант оформления документации («/** */» или «//»).</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="language-general-tab"></a>Общие</h5></div></div></div><p>Вкладка <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Языки программирования</span></span> содержит вложенную вкладку <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Общие</span></span>, на которой представлены несколько параметров генерации кода.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Префикс члена класса</span></span></p><p>Этот параметр позволяет при генерации кода добавлять к членам класса заданный пользователем префикс.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Пакет является пространством имён</span></span></p><p>В пространствах имён предусмотрен метод для предотвращения конфликтов имён в крупных проектах. Объявленные внутри блока пространства имён символы помещаются в именованную область, которая не позволяет ошибочно принять их за символы с такими же названиями, которые принадлежат другим областям программного кода.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Виртуальные деструкторы</span></span></p><p>Хотя деструкторы и не наследуются, если в базовом классе деструктор объявлен как виртуальный, деструктор в производном классе всегда перезаписывает его. Это делает возможным удаление динамически размещённых объектов полиморфного типа с помощью указателей на базовый класс.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Генерировать пустые конструкторы</span></span></p><p>Будут сгенерированы конструкторы с пустыми скобками.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Генерировать методы доступа к атрибутам</span></span></p><p>Будут сгенерированы методы для доступа к типам данных.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Встроенные операции</span></span></p><p>Генерировать методы как встроенные, но при этом компиляторы смогут самостоятельно определить, следует ли их встраивать.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Встроенные методы доступа к атрибутам</span></span></p><p>Генерировать методы доступа к данным класса как встроенные, но при этом компиляторы смогут самостоятельно определить, следует ли их встраивать.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Публичные методы доступа к атрибутам</span></span></p><p>С помощью этого пункта возможно указать, что методы, созданные как открытые, будут доступны любому экземпляру класса.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Создавать методы получения значения с префиксом «get»</span></span></p><p>С помощью этого пункта возможно указать программе добавлять префикс «get» для методов, которые получают или возвращают данные класса.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Удалять префикс «[a-zA-Z]_» из названий методов доступа</span></span></p><p>Если в пункте <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Префикс члена класса</span></span> был указан префикс, он будет удалён.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Методы доступа начинаются с заглавных букв</span></span></p><p>С помощью этого пункта можно указать программе делать первую букву названия метода заглавной.</p></li><li class="listitem"><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Для документирования используйте метку «\», а не «@»</span></span></p><p>Выбор метки, которую следует использовать при документировании параметров метода.</p></li></ul></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="language-method-body-tab"></a>Генерация тела метода</h5></div></div></div><p>
            </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-generation-language-method-settings.png" alt="Параметры на вкладке «Генерация тела метода» параметров генерации кода"><div class="caption"><p>Параметры на вкладке «Генерация тела метода» параметров генерации кода </p></div></div></div><p>
        </p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">List</span></span></p><p>Доступны следующие варианты типа списка: QPtrList, vector и std::vector. С помощью расположенного ниже поля возможно указать файл для включения. Предусмотрена кнопка выбора файла для включения в файловой системе. Также имеется параметр, который позволяет сделать список глобальным.</p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">String</span></span></p><p>Доступны следующие варианты типа строки: string и QString.  С помощью расположенного ниже поля возможно указать файл для включения. Предусмотрена кнопка выбора файла для включения в файловой системе. Также имеется параметр, который позволяет сделать строку глобальной. </p></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-importer-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="code-viewer-settings.html">След.</a></td></tr><tr><td class="prevCell">Параметры импорта кода </td><td class="upCell">Настройка</td><td class="nextCell"> Просмотр кода</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="code-viewer-settings.html"><html><head><title>Просмотр кода</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="code-generation-settings.html" title="Генерация кода"><link rel="next" href="auto-layout-settings.html" title="Параметры автоматического шаблона"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Просмотр кода</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-generation-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="auto-layout-settings.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-viewer-settings"></a>Просмотр кода</h2></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-viewer-settings.png" alt="Параметры на вкладке «Просмотр кода»"><div class="caption"><p>Параметры на вкладке «Просмотр кода» </p></div></div></div><p>
    </p><p>Allows customization of the Code Viewer. The <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Requested Font</span></span> section allows the selection of the font, font style, and font size. A representation of your choices is shown below the choices. </p><p>Группа <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Цвета</span></span> содержит следующие параметры: «Бумага», «Шрифт», «Выделение», «Блок объекта UML», «Скрытый блок», «Изменяемый текст», «Неизменяемый текст». Чтобы изменить соответствующие цвета, щёлкните по полю цвета рядом с названием нужного параметра. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-generation-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="auto-layout-settings.html">След.</a></td></tr><tr><td class="prevCell">Генерация кода </td><td class="upCell">Настройка</td><td class="nextCell"> Параметры автоматического шаблона</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="auto-layout-settings.html"><html><head><title>Параметры автоматического шаблона</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="settings.html" title="Глава 6. Настройка"><link rel="prev" href="code-viewer-settings.html" title="Просмотр кода"><link rel="next" href="authors.html" title="Глава 7. Авторы и история"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Параметры автоматического шаблона</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-viewer-settings.html">Пред.</a></td><td class="upCell">Настройка</td><td class="nextCell"><a accesskey="n" href="authors.html">След.</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="auto-layout-settings"></a>Параметры автоматического шаблона</h2></div></div></div><p>
        </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="auto-layout-settings.png" alt="Параметры на вкладке «Параметры автоматического шаблона»"><div class="caption"><p>Параметры на вкладке «Параметры автоматического шаблона» </p></div></div></div><p>
    </p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Автоопределение генераторов шаблонов</span></span></p><p>Функция автошаблона зависит от генераторов шаблонов из пакета GraphViz, который обычно устанавливается диспетчером пакетов вместе с Umbrello. Umbrello поддерживает автоматическое определение расположения этих генераторов шаблонов. В случаях, когда требуемый пакет не установлен или несовместим, возможно указать другой путь установки. </p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Показывать шаблон экспорта в контекстном меню диаграммы</span></span></p><p>Экспорт файла dot выполняется с помощью шаблона экспорта. Если эта опция отмечена, шаблон экспорта добавляется в список доступных шаблонов диаграмм и позволяет быстро просмотреть экспорт dot. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-viewer-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="authors.html">След.</a></td></tr><tr><td class="prevCell">Просмотр кода </td><td class="upCell">Настройка</td><td class="nextCell"> Авторы и история</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="other-features.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="font-settings.html">След.</a></td></tr><tr><td class="prevCell">Дополнительные возможности </td><td class="upCell"> </td><td class="nextCell"> Настройка шрифтов</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="authors.html"><html><head><title>Глава 7. Авторы и история</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="auto-layout-settings.html" title="Параметры автоматического шаблона"><link rel="next" href="copyright.html" title="Глава 8. Авторское право"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Авторы и история</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="auto-layout-settings.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="copyright.html">След.</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="authors"></a>Глава 7. Авторы и история</h1></div></div></div><p>Эта программа была создана Полом Хенсгеном (Paul Hensgen) в качестве одного из университетских проектов. Оригинальным именем приложения было <span class="application">UML Modeller</span>. Пол вёл разработку до конца 2001 года, создав версию программы 1.0. </p><p>Версия 1.0 уже предоставляла широкую функциональность, но после того, как проект был рассмотрен в университете Пола, другие разработчики смогли присоединиться к проекту и значительно улучшили <span class="application">UML Modeller</span>, обеспечив, среди прочего, переход от файлов бинарного формата к <acronym class="acronym">XML</acronym>, поддержку большего количества типов диаграмм <acronym class="acronym">UML</acronym>, генерацию кода и импорт кода. </p><p>Пол вынужден был уйти из команды разработки летом 2002, но, будучи свободным и открытым программным обеспечением, программа продолжала улучшаться и расти, поддерживаемая группой разработчиков из разных стран мира. В сентябре 2002 года название проекта было изменено с <span class="application"><acronym class="acronym">UML</acronym> Modeller</span> на <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>. Для этого было несколько причин. Наиболее важная заключалась в том, что слово <span class="quote">«<span class="quote">uml</span>»</span> является слишком общераспространённым и не подходит для некоторых дистрибутивов. Кроме того, разработчики сочли название <span class="application">Umbrello</span> более симпатичным. </p><p>Разработка <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, как и дискуссии о развитии программы в будущих версиях, открыта и ведётся через Интернет. Если вы желаете внести свой вклад в проект, свяжитесь с разработчиками. Существует много вариантов помощи проекту: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Отчёт об ошибках или предложения по усовершенствованию программы</p></li><li class="listitem"><p>Исправление ошибок и добавление возможностей</p></li><li class="listitem"><p>Создание хорошей документации и её перевод на другие языки</p></li><li class="listitem"><p>И конечно, программирование вместе с нами!</p></li></ul></div><p>Есть много способов внести свой вклад в проект. Любой вклад очень важен, и каждый приглашается к участию в проекте. </p><p>С разработчиками <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> возможно связаться по адресу <code class="email">(umbrello-devel AT kde.org)</code>. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="auto-layout-settings.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"><a accesskey="n" href="copyright.html">След.</a></td></tr><tr><td class="prevCell">Параметры автоматического шаблона </td><td class="upCell"> </td><td class="nextCell"> Авторское право</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="copyright.html"><html><head><title>Глава 8. Авторское право</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, моделирование, диаграммы, разработка программного обеспечения, разработка"><link rel="home" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="up" href="index.html" title="Руководство пользователя Umbrello UML Modeller"><link rel="prev" href="authors.html" title="Глава 7. Авторы и история"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Авторское право</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="authors.html">Пред.</a></td><td class="upCell"> </td><td class="nextCell"></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="copyright"></a>Глава 8. Авторское право</h1></div></div></div><p>© Paul Hensgen, 2001</p><p>© Авторы <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, 2002–2020</p><p><a name="gnu-fdl"></a>Этот документ
распространяется на условиях <a class="ulink" href="help:/kdoctools5-common/fdl-license.html" target="_top">GNU
Free Documentation License</a>.</p><p>Программа распространяется на условиях лицензии <a class="ulink" href="help:/kdoctools5-common/gpl-license.html" target="_top">GNU General Public License</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="authors.html">Пред.</a></td><td class="upCell"><a accesskey="h" href="index.html">Содержание</a></td><td class="nextCell"></td></tr><tr><td class="prevCell">Авторы и история </td><td class="upCell"> </td><td class="nextCell"> </td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">След.</a></td></tr><tr><td class="prevCell"> </td><td class="upCell"> </td><td class="nextCell"> Введение</td></tr></table></div><div id="footer_text">Вам есть что добавить на эту страницу?<br>Напишите <a href="mailto:kde-doc-english@kde.org" class="footer_email">команде документации KDE</a></div></div></div></body></html></FILENAME>

Generated by dwww version 1.15 on Thu Jun 27 16:42:43 CEST 2024.