O que é o padrão de arquitetura Command Query Separation (CQS)?

Command Query Separation (CQS) é um padrão de arquitetura que separa as operações que modificam o estado ou os comandos do sistema, conhecidas como operações de gravação, das operações que consultam o sistema para obter dados ou informações, conhecidas como operações de leitura. O padrão CQS enfatiza a necessidade de separar preocupações por ter uma distinção clara entre os procedimentos que alteram informações e aqueles que apenas retornam informações.

A ideia por trás do CQS é que os comandos que modificam o estado do sistema não devem retornar um valor e as consultas não devem ter nenhum efeito colateral ou mutação. Assim, no CQS, um método pode ser um comando ou uma consulta, mas não ambos. Essa separação adiciona clareza, melhora a capacidade de manutenção e reduz a complexidade do código.

Ao adotar o CQS, os desenvolvedores podem definir explicitamente a intenção de um método, o que, por sua vez, torna o código mais legível e autodocumentável. Além disso, o CQS pode ajudar a melhorar a escalabilidade e o desempenho do sistema, pois as operações de leitura podem ser otimizadas para sistemas pesados ​​de leitura e operações de gravação otimizadas para sistemas pesados ​​de gravação.

Data de publicação: