ddd-tactical-patterns
Aplique Padrões Táticos de DDD ao Seu Código
Tem dificuldade em traduzir regras de domínio em estruturas de código limpo? Esta habilidade orienta você através dos padrões táticos de DDD, incluindo entidades, objetos de valor, agregados, repositórios e eventos de domínio.
Baixar o ZIP da skill
Upload no Claude
Vá em Configurações → Capacidades → Skills → Upload skill
Ative e comece a usar
Testar
A utilizar "ddd-tactical-patterns". Modelar um agregado Order com operações submit e cancel
Resultado esperado:
classe Order com campo status privado, método submit() que valida quantidade de itens e aplica invariante de transição única, e método cancel() com condições de guarda apropriadas. Inclui emissão de eventos de domínio para OrderSubmitted e OrderCancelled.
A utilizar "ddd-tactical-patterns". Criar um objeto de valor para endereço de Email
Resultado esperado:
Classe Email imutável com validação regex no construtor, igualdade por comparação de valor e método toString(). Rejeita formatos inválidos no momento da construção.
Auditoria de Segurança
SeguroAll static analysis findings are false positives. The 'external_commands' detections were Markdown backticks around code examples (e.g., `OrderSubmitted`), not actual shell execution. The 'blocker' findings for weak cryptography and system reconnaissance were triggered by documentation text, not executable code. This is a safe educational skill containing only DDD pattern guidance and TypeScript examples.
Pontuação de qualidade
O Que Você Pode Construir
Refatorar Modelos de Domínio Anêmicos
Transformar classes contendo apenas dados em objetos de domínio ricos em comportamento que aplicam regras de negócio.
Projetar Novos Agregados
Estruturar novo código de domínio com limites de agregado adequados e aplicação de invariantes.
Implementar Eventos de Domínio
Adicionar comunicação orientada a eventos entre agregados usando eventos de domínio no tempo passado.
Tente Estes Prompts
Preciso modelar um agregado Order. Ajude-me a identificar os invariantes, projetar a entidade com métodos de comportamento e definir objetos de valor apropriados para este domínio.
Crie um objeto de valor imutável para Money que inclua currency e amount. Inclua validação na construção e igualdade por valor.
Projete uma interface de repositório para o agregado Order que exponha métodos de query amigáveis ao domínio sem vazar detalhes de implementação do ORM.
Ajude-me a definir eventos de domínio para transições de estado do Order. Inclua nomenclatura no tempo passado, payloads mínimos e estratégia de versionamento de schema.
Melhores Práticas
- Identifique invariantes primeiro, depois projete limites de agregado em torno deles
- Mantenha objetos de valor imutáveis com validação no momento da construção
- Nomeie eventos de domínio no tempo passado com payloads mínimos e estáveis
Evitar
- Regras de consistência síncronas entre agregados que violam limites de transação
- Vazar entidades ORM para a camada de domínio
- Controladores contendo lógica de negócio do domínio em vez de objetos de domínio
Perguntas Frequentes
Quando devo usar agregados em vez de entidades simples?
Objetos de valor devem ser mutáveis?
Como lido com comunicação entre agregados?
O que pertence em uma interface de repositório?
Como sei se preciso de eventos de domínio?
Posso usar esta habilidade para arquitetura de microsserviços?
Detalhes do Desenvolvedor
Autor
sickn33Licença
MIT
Repositório
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/ddd-tactical-patternsReferência
main
Estrutura de arquivos