Elementos e Estilização
Cada nível C4 suporta diferentes tipos de elementos. Compreendê-los ajuda a criar diagramas de arquitetura precisos e significativos.
Elementos por Nível
Nível 1: Contexto do Sistema
O nível mais alto mostra seu sistema no seu ambiente:
| Elemento | Descrição |
|---|---|
| Sistema de Software | Seu sistema ou produto principal |
| Pessoa | Usuários ou personas que interagem com o sistema |
| Sistema Externo | Sistemas de terceiros com os quais seu sistema se integra |
Nível 2: Container
Mostra os blocos de construção técnicos dentro de um sistema:
| Elemento | Descrição |
|---|---|
| Serviço | Serviços de backend ou microsserviços |
| API | APIs REST, GraphQL ou gRPC |
| Web App | Aplicações web frontend |
| App Mobile | Aplicações iOS ou Android |
| Banco de Dados | Bancos de dados SQL ou NoSQL |
| Cache | Redis, Memcached, etc. |
| Fila de Mensagens | Kafka, RabbitMQ, SQS, etc. |
| Armazenamento de Arquivos | S3, blob storage, sistemas de arquivos |
Nível 3: Componente
Mostra a estrutura interna de um container:
| Elemento | Descrição |
|---|---|
| Controller | Manipuladores de requisições HTTP |
| Handler | Manipuladores de eventos ou mensagens |
| Repository | Camada de acesso a dados |
| Adapter | Adaptadores para sistemas externos |
| Middleware | Processadores de requisição/resposta |
| Utility | Funções auxiliares e utilitários |
| Model | Modelos de domínio e entidades |
Nível 4: Código
Mostra detalhes de implementação:
| Elemento | Descrição |
|---|---|
| Class | Classes orientadas a objetos |
| Interface | Definições de interfaces |
| Struct | Estruturas de dados |
| Function | Funções independentes |
| Method | Métodos de classes |
| Enum | Tipos de enumeração |
| Constant | Valores constantes |
| Type | Definições de tipos |
Adicionando Elementos
Usando o Botão Adicionar
- Clique em Adicionar na barra de ferramentas
- Selecione o tipo de elemento
- Insira o nome e a descrição
- Clique em Criar
Usando o Menu de Contexto
- Clique com o botão direito em um espaço vazio do canvas
- Selecione Adicionar [Tipo de Elemento]
- Preencha os detalhes
- Clique em Criar
Arrastar e Soltar
Para containers e componentes, você pode arrastar elementos da barra lateral diretamente para o canvas.
Estilizando Elementos
Acessando Opções de Estilo
Clique com o botão direito em qualquer elemento para acessar a estilização:
- Cor de fundo: Cor de preenchimento do elemento
- Cor da borda: Cor do contorno
- Cor do texto: Cor do rótulo
- Ícone: Ícone visual representando o elemento
Paleta de Cores
O Archyl oferece uma paleta de cores curada:
- Tons de azul: Serviços, APIs
- Tons de verde: Bancos de dados, armazenamento
- Tons de roxo: Sistemas externos
- Tons de laranja: Filas de mensagens, assíncronos
- Tons de cinza: Utilitários, infraestrutura
Dicas de Estilização Consistente
- Use a mesma cor para tipos de elementos similares
- Combine as cores com as convenções da sua organização
- Considere paletas acessíveis para daltônicos
- Documente seu esquema de cores nas notas do projeto
Overlays
Overlays são agrupamentos visuais coloridos que ajudam a organizar elementos no seu diagrama.
Criando um Overlay
- Clique em Adicionar e selecione Overlay
- Dê um nome (ex.: "Serviços Backend", "Apps Frontend")
- Escolha uma cor da paleta
- Clique em Criar
Usando Overlays
- Arraste elementos para a área do overlay
- O overlay fornece agrupamento visual
- Overlays são específicos por nível
- Agrupamentos diferentes em cada nível C4
Casos de Uso de Overlays
- Agrupar por responsabilidade da equipe
- Agrupar por unidade de implantação
- Agrupar por domínio (contextos delimitados do DDD)
- Destacar componentes do caminho crítico
- Mostrar limites de segurança
Boas Práticas para Overlays
- Mantenha simples: 3-5 overlays no máximo por nível
- Use nomes significativos: "Domínio de Pagamento" e não "Grupo 1"
- Cores consistentes: Mesma cor de overlay entre níveis para agrupamentos relacionados
- Não sobreponha: Evite overlays sobrepostos confusos
Estilizando Relacionamentos
Relacionamentos também podem ser estilizados:
| Propriedade | Opções |
|---|---|
| Cor | Combinar com cores de elementos ou usar neutro |
| Estilo da linha | Sólido, tracejado, pontilhado |
| Largura da linha | Fina, média, grossa |
| Estilo da seta | Padrão, vazada, nenhuma |
Dicas de Estilização de Relacionamentos
- Use linhas tracejadas para comunicação assíncrona
- Use linhas mais grossas para fluxos de dados principais
- Codifique por cor segundo o protocolo (HTTP, gRPC, eventos)
Próximos Passos
- Relacionamentos - Conecte elementos
- Visão Geral do Modelo C4 - Entenda o modelo
- Guia do Primeiro Projeto - Aplique esses conceitos