Aula 10 - Mermaid Avançado ⚡
Objetivo
Objetivo: Expandir o uso do Mermaid para diagramas de sequência (interação entre sistemas), gráficos de Gantt (gestão de tempo) e Mapas Mentais, além de aprender a estilizar diagramas com CSS.
1. Diagramas de Sequência 🛡️
Representam como diferentes partes de um sistema (atores e participantes) interagem ao longo do tempo através de mensagens.
Sintaxe Básica:
participant: Define um componente.actor: Define um usuário ou entidade externa.A ->> B: Mensagem síncrona.A -->> B: Resposta.
```mermaid sequenceDiagram actor Usuario participant App participant DB
Usuario->>App: Solicita Login
App->>DB: Verifica Credenciais
DB-->>App: OK
App-->>Usuario: Acesso Liberado
```
2. Gráficos de Gantt 📅
Excelentes para cronogramas de projetos dentro da documentação.
mermaid gantt title Cronograma de Estudo dateFormat YYYY-MM-DD section Basico Aula 01-04 :a1, 2024-03-01, 7d section Avancado Aula 09-12 :a2, after a1, 5d
3. Mapas Mentais (Mindmaps) 🧠
Uma forma rápida de organizar ideias e categorias.
mermaid mindmap root((Markdown)) Sintaxe Basica Estendida Ferramentas VS Code MkDocs Diagramas Mermaid PlantUML
4. Estilização de Nós (Styling) 💅
Você pode aplicar cores, bordas e estilos específicos aos nós usando o comando style.
Exemplo:
style A fill:#f9f,stroke:#333,stroke-width:4px
5. Simulação de Sequência Técnica 🐚
$ echo "sequenceDiagram" > seq.mermaid
$ echo " Alice ->> Bob: Hello" >> seq.mermaid
$ cat seq.mermaid
sequenceDiagram
Alice ->> Bob: Hello
6. Mini-Projeto: Mapa Mental de Carreira 🏗️
Crie um arquivo carreira.md contendo um mapa mental Mermaid: 1. O centro (Root) deve ser "Tecnologia". 2. Crie ramificações para "Frontend", "Backend" e "Soft Skills". 3. Dentro de cada ramificação, adicione 2 itens (ex: Frontend -> React, Vue).
7. Exercícios de Fixação 🧠
- Qual a diferença entre
participanteactorem um diagrama de sequência? - Para que serve o comando
dateFormatem um gráfico de Gantt? - Como você mudaria a cor de fundo de um nó chamado
Bpara amarelo (#ffff00)?
Próxima Aula: Vamos sair dos gráficos e entrar na matemática com MathJax! 🔢