Um conceito reconhecido pelo sistema
Entidade é um conceito do domínio representado no modelo do sistema e cujas ocorrências precisam ser identificadas. Pessoa, curso e matrícula podem ser entidades de uma aplicação de ensino. O modelo descreve seus atributos e relações antes de escolher todos os detalhes de armazenamento.
A identidade permite acompanhar a mesma ocorrência ao longo de mudanças. Uma correção de nome pode preservar o identificador do cadastro. O sistema precisa distinguir essa continuidade de dois cadastros diferentes que possuem nomes semelhantes.
O uso exato do termo varia entre técnicas de modelagem. Em modelagem relacional, é comum falar no tipo de entidade e em suas ocorrências. Em Domain-Driven Design, a identidade persistente é central para distinguir entidade de objeto de valor.
Começar pelo comportamento que precisa ser representado
Imagine uma escola que oferece várias turmas do mesmo curso. Curso descreve o conteúdo oferecido, turma identifica uma edição com datas próprias e matrícula relaciona um estudante a uma turma. Tratar os três como uma única linha pode dificultar alterações independentes.
Você identifica os conceitos perguntando o que precisa ser acompanhado ao longo do tempo. Uma nova turma não é apenas uma troca de nome do curso anterior. Ela pode ter inscrições, datas e participantes próprios, que devem continuar identificáveis.
Entidade, registro e tabela
Tabela é uma estrutura de armazenamento, e registro é uma linha concreta nessa estrutura. Uma entidade do modelo pode ser persistida em uma tabela, mas a correspondência não precisa ser de um para um. Herança, histórico e outras necessidades podem distribuir sua representação.
Também existem tabelas técnicas que não representam diretamente um conceito principal do negócio. Uma tabela de controle de migrations, por exemplo, atende à operação do software. Ler todas as tabelas como se fossem entidades comerciais produziria um modelo confuso.
Identidade e atributos
Atributos descrevem a entidade, enquanto a identidade distingue sua ocorrência. Usar um nome como identificador pode falhar porque nomes mudam e se repetem. No exemplo da escola, o identificador 7 permite consultar o mesmo cadastro após a correção do nome e preservar suas matrículas.
Nem todo conjunto de atributos precisa virar uma entidade. Em determinados modelos, um valor é comparado por seu conteúdo e não possui identidade própria. A aplicação define essa representação pelo uso do conceito, sem considerar apenas o número de campos.
Como conferir o modelo
Percorra situações reais do produto e verifique se cada ocorrência pode ser identificada sem ambiguidade. Teste mudanças de atributos, múltiplos vínculos e preservação de histórico. Se uma correção de nome exige recriar relações, pode haver confusão entre identidade e descrição.
Depois, confira como o armazenamento representa essas necessidades. O verbete de relacionamento detalha as associações entre os conceitos e suas quantidades permitidas.
Dúvidas frequentes
Perguntas frequentes sobre Entidade
- Entidade é sinônimo de tabela?
- Entidade pertence ao modelo do domínio. Tabela é uma estrutura de armazenamento, que pode representar o conceito de diferentes formas.
- O nome identifica uma entidade de forma suficiente?
- Nomes podem mudar ou se repetir. O modelo precisa definir como distinguir e acompanhar a mesma ocorrência ao longo do tempo.
- Toda tabela representa uma entidade do negócio?
- Algumas tabelas atendem a funções técnicas, como controlar migrations. A estrutura física não deve ser interpretada automaticamente como o modelo comercial.
- Todo grupo de campos precisa de identidade própria?
- A escolha depende do uso no domínio. Alguns valores são comparados por seu conteúdo, enquanto entidades precisam ser acompanhadas por uma identidade.
Para continuar
Recursos relacionados
Documentação
Microsoft: entidades e objetos de valor
Distingue identidade de entidades e comparação de objetos de valor no modelo de domínio.
Abrir recursoDocumentação
Tabelas no PostgreSQL
Apresenta linhas, colunas e tipos na definição de tabelas.
Abrir recursoDocumentação
Restrições de tabela no PostgreSQL
Documenta chaves, unicidade, referências e restrições de valores.
Abrir recursoSite de referência
Desenvolvimento Colaborativo da Dev Side Studio
Conheça o acompanhamento técnico ao vivo para revisar identidades, vínculos e representação dos cadastros no banco.
Abrir recursoAplicação na formação
Formação DevOps
A modelagem de entidades orienta a representação de cadastros e vínculos no armazenamento da aplicação.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.