Difference between revisions of "Help:UML"
From Wiki4Intranet
(Массовая правка: замена PCRE \n{3,}<noinclude>\[\[Category:Справка\]\]</noinclude> на <noinclude>Category:Справка</noinclude>) |
|||
(3 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Можно автоматически рисовать UML-диаграммы классов по их текстовому описанию, причём с помощью двух расширений: | Можно автоматически рисовать UML-диаграммы классов по их текстовому описанию, причём с помощью двух расширений: | ||
− | * [http://plantuml.sourceforge.net/ PlantUML] | + | * [http://plantuml.sourceforge.net/ PlantUML] — более удобный, чем UMLGraph, по собственному языку разметки. |
− | * [http://www.umlgraph.org/ UMLGraph] | + | * [http://www.umlgraph.org/ UMLGraph] — по близкому к описанию классов на языках типа Java/С#. |
= [http://plantuml.sourceforge.net/ PlantUML] = | = [http://plantuml.sourceforge.net/ PlantUML] = | ||
− | Полная справка по | + | Полная справка по языку — [[Media:PlantUML Language Reference Guide.pdf]]. [[Файл:PlantUML Language Reference Guide.pdf|thumb|Справка по PlantUML]] |
− | Синтаксис | + | Синтаксис вставки — просто |
<pre> | <pre> | ||
<uml> | <uml> | ||
Line 15: | Line 15: | ||
Пример графа: | Пример графа: | ||
+ | {{Annotated| | ||
+ | <uml> | ||
+ | title Основной цикл — получение агрегированных проводок | ||
+ | autonumber "<b>[0]" | ||
+ | |||
+ | note left of МСФО: 1.1 | ||
+ | activate МСФО | ||
+ | МСФО -> Система: Запрос справочников | ||
+ | deactivate МСФО | ||
+ | |||
+ | note right of Система: 2.1 | ||
+ | activate Система | ||
+ | Система -> МСФО: Возврат справочников | ||
+ | deactivate Система | ||
+ | note left of МСФО: 1.2 | ||
+ | |||
+ | activate МСФО | ||
+ | МСФО -> Система: Запрос используемых аналитик | ||
+ | deactivate МСФО | ||
+ | note right of Система: 2.2 | ||
+ | activate Система | ||
+ | Система -> МСФО: Возврат используемых аналитик | ||
+ | deactivate Система | ||
+ | note left of МСФО: 1.3 | ||
+ | |||
+ | activate МСФО | ||
+ | МСФО -> Система: Запрос выгрузки/выгрузок | ||
+ | deactivate МСФО | ||
+ | note right of Система: 2.3 | ||
+ | activate Система | ||
+ | Система -> МСФО: Возврат выгрузки/выгрузок | ||
+ | deactivate Система | ||
+ | note left of МСФО: 1.4 | ||
+ | |||
+ | activate МСФО | ||
+ | МСФО -> Система: Результат выгрузки/выгрузок | ||
+ | deactivate МСФО | ||
+ | activate Система | ||
+ | note right of Система: 2.4 | ||
+ | </uml> | ||
+ | |<code-xml> | ||
<uml> | <uml> | ||
− | title Основной | + | title Основной цикл — получение агрегированных проводок |
autonumber "<b>[0]" | autonumber "<b>[0]" | ||
Line 56: | Line 97: | ||
note right of Система: 2.4 | note right of Система: 2.4 | ||
</uml> | </uml> | ||
+ | </code-xml> | ||
+ | |Разметка}} | ||
= [http://www.umlgraph.org/ UMLGraph] = | = [http://www.umlgraph.org/ UMLGraph] = | ||
Line 76: | Line 119: | ||
/** | /** | ||
* @opt nodefontcolor «blue» | * @opt nodefontcolor «blue» | ||
− | * / | + | */ |
class Person { | class Person { | ||
String Name; | String Name; | ||
Line 92: | Line 135: | ||
/** | /** | ||
− | * @composed | + | * @composed 1 — 4 Tyre |
− | * @composed | + | * @composed 1 — 1 Engine |
− | * @composed | + | * @composed 1 — 1 Body |
− | * / | + | */ |
class Car {} | class Car {} | ||
Line 307: | Line 350: | ||
} | } | ||
− | /** @ | + | /** @depend — <friend> — SetTopController */ |
class ChannelIterator {} | class ChannelIterator {} | ||
Line 478: | Line 521: | ||
class UMLOptions {} | class UMLOptions {} | ||
− | /** @assoc * | + | /** @assoc * — "*\n\n+user " User */ |
class UserGroup {} | class UserGroup {} | ||
− | /** @navassoc «1\n\n+owner\ | + | /** @navassoc «1\n\n+owner\r» — «*\n\n+key» Password */ |
class User{} | class User{} | ||
Line 603: | Line 646: | ||
<umlgraph> | <umlgraph> | ||
/** | /** | ||
− | * @assoc * | + | * @assoc * — 1 Aeroport |
− | * @assoc * | + | * @assoc * — 1 Aeroport |
− | * @assoc * | + | * @assoc * — 1 PlaneModel |
− | * @assoc * | + | * @assoc * — 1 Company |
* / | * / | ||
class Race { | class Race { | ||
Line 617: | Line 660: | ||
/** | /** | ||
− | * @has | + | * @has 1 — 1..* Town |
* / | * / | ||
class Country { | class Country { | ||
Line 625: | Line 668: | ||
/** | /** | ||
− | * @composed | + | * @composed 1 — 1..* PlacesBlock |
* / | * / | ||
class PlaneModel { | class PlaneModel { | ||
Line 632: | Line 675: | ||
/** | /** | ||
− | * @assoc * | + | * @assoc * — 1 PlaceType |
* / | * / | ||
class PlacesBlock { | class PlacesBlock { | ||
Line 647: | Line 690: | ||
/** | /** | ||
− | * @assoc * | + | * @assoc * — 1 Company |
− | * @assoc * | + | * @assoc * — 1 Race |
* / | * / | ||
class Tariff { | class Tariff { | ||
Line 658: | Line 701: | ||
/** | /** | ||
− | * @assoc * | + | * @assoc * — 1 PlaceType |
− | * @assoc * | + | * @assoc * — 1 Race |
* @note Rest | * @note Rest | ||
* of tickets | * of tickets | ||
Line 668: | Line 711: | ||
/** | /** | ||
− | * @assoc * | + | * @assoc * — 1 Town |
* / | * / | ||
class Aeroport{ | class Aeroport{ | ||
Line 681: | Line 724: | ||
class CharterRace extends Race {}; | class CharterRace extends Race {}; | ||
− | // | + | //Ниже — настройки диаграммы, не трогать и не обращать внимание! |
/** | /** | ||
* @hidden | * @hidden | ||
Line 707: | Line 750: | ||
* http://umlgraph.org Automated Drawing of UML Diagrams | * http://umlgraph.org Automated Drawing of UML Diagrams | ||
− | [[ | + | <noinclude>[[Category:Справка]]</noinclude> |
− | + | ||
− | + |
Latest revision as of 14:56, 1 September 2015
Можно автоматически рисовать UML-диаграммы классов по их текстовому описанию, причём с помощью двух расширений:
- PlantUML — более удобный, чем UMLGraph, по собственному языку разметки.
- UMLGraph — по близкому к описанию классов на языках типа Java/С#.
Contents
- 1 PlantUML
- 2 UMLGraph
- 2.1 Диаграммы классов
- 2.1.1 Большой пример
- 2.1.2 Generalisation Relationships
- 2.1.3 Advanced Relationships
- 2.1.4 Relationships Inference
- 2.1.5 Schema
- 2.1.6 Element Visibility
- 2.1.7 Association Types
- 2.1.8 Real Example (Catalina Classes)
- 2.1.9 Class Stereotypes and Tagged Values
- 2.1.10 Fonts, Colors, Global and Local Options
- 2.2 Еще пример
- 2.3 Ссылки
- 2.1 Диаграммы классов
PlantUML
Полная справка по языку — Media:PlantUML Language Reference Guide.pdf. thumb|Справка по PlantUML
Синтаксис вставки — просто
<uml> ...код... </uml>
Пример графа:
Разметка
<uml> title Основной цикл — получение агрегированных проводок autonumber "<b>[0]" note left of МСФО: 1.1 activate МСФО МСФО -> Система: Запрос справочников deactivate МСФО note right of Система: 2.1 activate Система Система -> МСФО: Возврат справочников deactivate Система note left of МСФО: 1.2 activate МСФО МСФО -> Система: Запрос используемых аналитик deactivate МСФО note right of Система: 2.2 activate Система Система -> МСФО: Возврат используемых аналитик deactivate Система note left of МСФО: 1.3 activate МСФО МСФО -> Система: Запрос выгрузки/выгрузок deactivate МСФО note right of Система: 2.3 activate Система Система -> МСФО: Возврат выгрузки/выгрузок deactivate Система note left of МСФО: 1.4 activate МСФО МСФО -> Система: Результат выгрузки/выгрузок deactivate МСФО activate Система note right of Система: 2.4 </uml>
UMLGraph
Диаграммы классов
/** * @opt nodefontcolor "blue" */ class Person { String Name; } class Employee extends Person {} class Client extends Person {}
class Tyre {} class Engine {} class Body {} /** * @composed 1 - 4 Tyre * @composed 1 - 1 Engine * @composed 1 - 1 Body */ class Car {}
/** * @opt shape node * @note Located in the * machine room * @note Sun Blade 6048 * @depend - - - MapLocation * @depend - - - DataMine */ class Server{} /** @opt shape component */ class MapLocation {} /** @opt shape component */ class DataMine {} /** * CPU-munching * components that must * run on this server * @opt shape note * @opt commentname * @assoc - - - MapLocation * @assoc - - - DataMine */ class munchComment {}
Большой пример
Generalisation Relationships
Advanced Relationships
Relationships Inference
Schema
Element Visibility
Association Types
Real Example (Catalina Classes)
Class Stereotypes and Tagged Values
Fonts, Colors, Global and Local Options
Еще пример
Ссылки
- http://umlgraph.org Automated Drawing of UML Diagrams