Tag archives for DDD

Arquitetura

Padrões e CQRS (Command Query Responsibility Segregation) – Parte 1


Existem muitos padrões de arquitetura disponíveis no momento e muitos outros estão por vir. Fato é que alguns projetos foram bem sucedidos e outros não, sejam estes utilizando o padrão da moda DDD (Domain Driven Desing) ou qualquer outro padrão de arquitetura. Mas o que seria um Padrão? O arquiteto e Professor Christopher Alexande no livro “A Times Way of Building” descreveu que um padrão é uma regra de três partes que expressa a relação entre um contexto, um problema e uma solução. Costumo responder esta pergunta apresentando um padrão sendo uma formula para solucionar um problema sob um...
Continuar Lendo »
ASP.NET IDENTITY

Aplicando Crosscutting ao AspNet Identity


Olá pessoal, tudo bem? Venho percebendo há algum tempo, nas comunidades que frequento, uma necessidade grande de aplicar vários conceitos de arquitetura de software dentro de um projeto web como: DDD, TDD, BDD, ATDD, SOLID, CrossCutting e por ai vai. Mas como criar uma boa arquitetura? Algumas pessoas muitas vezes, seguem a onda das sopas de letrinhas e idéias que nós da comunidade divulgamos, abordamos e constatemente estamos falando e com isso tentam implementar esses conceitos dentro de seus projetos, em alguns casos sem ao menos procurar saber o porque, o pra que e ler um pouco sobre o...
Continuar Lendo »
Arquitetura

Validando Domínios sem Exceptions


Fala galera, tranquilo? Hoje gostaria de compartilhar uma de ‘n’ formas que existe para validar uma entidade de domínio.  Em projetos que passei, ou até mesmo pesquisando na internet, é muito comum o uso de Exceptions para tal. Se você não quer entrar em um pattern mais elaborado e talvez gerar excesso de engenharia para uma tarefa relativamente simples, usar exceções na validação é sem dúvidas a forma mais “clean” do ponto de vista de código, afinal se uma regra não for atendida, simplesmente força uma exceção que interrompe o fluxo e ainda pode ser capturado em um nível...
Continuar Lendo »