Руководство по созданию диаграмм с помощью Mermaid и PlantUML

Введение

Разберем как создавать диаграммы с помощью кода на примере Mermaid и PlantUML.


Установка и настройка

Установка Java

Для работы PlantUML необходимо установить Java:

  1. Скачайте Java: Перейдите на официальный сайт Java Downloads и скачайте последнюю версию.
  2. Установите Java: Следуйте инструкциям установщика для вашей операционной системы.
  3. Проверьте установку: В командной строке введите java -version, чтобы убедиться, что Java установлена корректно.

Установка Visual Studio Code

Скачайте и установите Visual Studio Code с официального сайта:

Установка расширений

  1. Mermaid Markdown Syntax Highlighting
  2. PlantUML (jebbs.plantuml)
  3. Markdown Preview Enhanced

Поддерживаемые диаграммы

Оба инструмента, Mermaid и PlantUML, поддерживают следующие типы диаграмм:

  • Графы
  • Блок-схемы
  • Диаграммы Ганта
  • Диаграммы последовательностей
  • ER-диаграммы (для Mermaid)
  • Диаграммы классов (для PlantUML)
  • Диаграммы состояний (для PlantUML)
  • Диаграммы активности (для PlantUML)
  • ...

С полным перечнем можно ознакомиться в официальной документации: Mermaid и PlantUML.


Создание диаграмм с помощью Mermaid

Mermaid — это простой и мощный инструмент для создания диаграмм с использованием текста.

Пример диаграммы

graph LR A[Начало] --> B{Вопрос?} B -- Да --> C[Действие 1] B -- Нет --> D[Действие 2] C --> E[Конец] D --> E[Конец]

Стилизация диаграмм

Диаграммы Mermaid можно стилизовать с помощью CSS и встроенных тем.

Пример стилизации:

graph LR A[Начало] --> B{Вопрос?} B -- Да --> C[Действие 1] B -- Нет --> D[Действие 2] C --> E[Конец] D --> E[Конец] classDef default fill:#f9f,stroke:#333,stroke-width:2px; class A,C,E default;

Рендеринг онлайн

Диаграммы Mermaid можно рендерить онлайн через mermaid.live.


Создание диаграмм с помощью PlantUML

PlantUML — это мощный инструмент для создания UML-диаграмм с помощью текста. PlantUML требует установки Java для рендеринга диаграмм.

Пример диаграммы последовательностей

@startuml Alice -> Bob : Привет! Bob --> Alice : Привет, как дела? @enduml

Пример диаграммы классов

@startuml class Animal { +String name +int age +run() } class Dog { +String breed +bark() } Animal <|-- Dog @enduml

Пример диаграммы состояний

@startuml [*] --> Idle Idle --> Processing : Start Processing --> Finished : Process complete Finished --> [*] @enduml

Пример диаграммы активности

@startuml :start: -> :Request received; if (Valid request?) then (yes) -> :Process request; -> :Send response; else (no) -> :Error; endif -> :End; @enduml

Стилизация диаграмм

PlantUML позволяет настраивать стили диаграмм с помощью тегов и специальных команд. Например, можно изменять цвет, шрифт и положение элементов.

Пример стилизации:

@startuml skinparam backgroundColor #EEEBDC skinparam handwritten true Alice -> Bob : Привет! Bob --> Alice : Привет, как дела? @enduml

Рендеринг онлайн

PlantUML диаграммы можно рендерить онлайн через PlantUML онлайн рендерер.