Primeiro diagrama
Ao fim desta página você terá um modelo válido e um diagrama desenhado na sua máquina. Leva menos de dez minutos, não exige conta nenhuma e não envia nada para lugar nenhum.
Pré-requisito: a ferramenta instalada — veja Instalação.
-
Criar a estrutura inicial
Seção intitulada “Criar a estrutura inicial”Dentro do repositório onde a arquitetura vai morar:
Terminal window cfour initEle escreve cinco arquivos e diz o que fazer em seguida:
criado cfour.yamlcriado arquitetura/modelagem.yamlcriado arquitetura/model/ola/project.yamlcriado arquitetura/model/ola/elements.yamlcriado arquitetura/model/ola/contexto.yamlEsse é um modelo mínimo que já desenha alguma coisa: uma pessoa, um sistema, uma seta e um diagrama. O nome da modelagem é
arquiteturapor padrão; usecfour init --id <id> --nome "<nome>"para escolher outro. -
Ver o que ele escreveu
Seção intitulada “Ver o que ele escreveu”O arquivo
arquitetura/model/ola/elements.yamltem duas caixas e uma seta:arquitetura/model/ola/elements.yaml elements:- id: visitantename: Visitanteshape: actor- id: sitename: Siteshape: systemdescription: O que o visitante abre.relations:- from: visitanteto: sitekind: synclabel: AcessaRepare no que não está escrito: ninguém disse que
siteé um sistema. Ele é raiz — não temparent—, e no C4 uma raiz é um sistema. O nível vem da árvore de contenção, nunca de um campo.E o diagrama, em
contexto.yaml:arquitetura/model/ola/contexto.yaml kind: diagramid: contextotitle: arquitetura — Contextolevel: contextinclude:- level: contextincluderecebe um critério, e não uma lista de identificadores.level: contextcasa com toda caixa que é raiz — então acrescentar um segundo sistema no arquivo ao lado o traz para este desenho sem ninguém editar aqui. -
Validar
Seção intitulada “Validar”Terminal window cfour checkarquitetura (arquitetura)2 elementos · 1 relações · 1 diagramas · 0 fluxos0 erro(s), 0 aviso(s)Esse é o comando que você vai rodar o tempo todo, e é o que você coloca no seu CI. Ele sai com código 1 quando há erro.
-
Ver na tela
Seção intitulada “Ver na tela”Terminal window cfour servecfour serve · http://127.0.0.1:51991 modelagem(ns) · arrastar salva em .layout/ da modelagem abertaCtrl+C para pararAbra o endereço. Você verá o diagrama de contexto: o Visitante e o Site, com a seta entre eles.
O servidor escuta apenas em
127.0.0.1, ou seja, só a sua máquina o alcança. -
Acrescentar uma caixa e descer um nível
Seção intitulada “Acrescentar uma caixa e descer um nível”Abra
elements.yamle acrescente um container dentro do site — basta dar a ele umparent:arquitetura/model/ola/elements.yaml elements:- id: visitantename: Visitanteshape: actor- id: sitename: Siteshape: systemdescription: O que o visitante abre.- id: site-webname: Aplicação Webshape: browserparent: sitetechnology: ReactAgora
site-webestá um nível abaixo desite, ou seja, é um container. -
Escrever o diagrama que mostra esse nível
Seção intitulada “Escrever o diagrama que mostra esse nível”Crie
arquitetura/model/ola/containers.yaml:arquitetura/model/ola/containers.yaml kind: diagramid: containerstitle: Site — Containerslevel: containerscope: siterelations: autoscope: sitefaz duas coisas: abre a caixasitepor dentro e, como não háinclude, mostra os filhos diretos dela. É assim que se desce um nível.Valide e recarregue o navegador:
Terminal window cfour check && cfour serve
Para onde ir agora
Seção intitulada “Para onde ir agora”- Para construir um modelo de verdade, passo a passo, comece em A anatomia de uma modelagem e siga a seção Modelando na ordem.
- Para publicar e compartilhar por link, vá para Como a publicação funciona.
- Para escrever pelo terminal em vez de editar YAML à mão, veja Escrever no modelo.