Pular para conteúdo

Introdução

Neste tutorial, você vai desenvolver, passo a passo, uma aplicação com o framework.

Pré-requisitos

Para seguir o tutorial, você precisa:

O tutorial pressupõe que você sabe programar em Java e usar o Maven. Os conceitos de DDD, arquitetura limpa, CQRS e programação defensiva e o framework são explicados nas páginas de referência, para as quais as lições apontam. Já as bibliotecas sobre as quais o framework é construído não são ensinadas aqui; as lições explicam apenas os detalhes delas que o código usa de forma pouco evidente. Se alguma delas for nova para você, consulte sua documentação:

Subdomínios

No exemplo deste tutorial, o domínio foi decomposto em dois subdomínios:

  • Geografia, que contém os conceitos de unidade federativa e município;
  • CRM (Customer Relationship Management), que contém o conceito de cliente.

Lições

O tutorial é dividido em três lições, cada uma dedicada a um agregado. Cada lição parte do projeto deixado pela anterior e explica apenas o que ela acrescenta:

Lição O que acrescenta Projeto ao final da lição
1. Unidade federativa o projeto Maven, gerado pelo gerador, e o primeiro agregado, implementado camada por camada: domínio, testes, aplicação, infraestrutura e API REST exemplo1
2. Município um agregado que referencia outro, com uma associação entre as entidades JPA, uma ação além das quatro operações básicas e a proteção contra a exclusão de um agregado referenciado exemplo2
3. Cliente o subdomínio CRM, que passa a depender de outro, e um agregado com identificador gerado pelo banco de dados e um objeto de valor formado por vários atributos exemplo

Os diretórios exemplo1, exemplo2 e exemplo do repositório de D5 contêm o projeto completo ao final de cada lição. Todos usam os mesmos nomes de módulos e pacotes — em cada lição, você continua evoluindo o mesmo projeto, criado no diretório exemplo.