Estou com uma dúvida em relação ao clean archtecture. Eu entendi que a arquitetura limpa é uma maneira de modelar o software de uma maneira que ele esteja desacoplado dos frameworks, ou seja o que o software tem que fazer deve estar separado de como ele deve fazer, assim podemos "facilmente" alterar a maneira de como fazemos o que o software se propõe a fazer. Porém logo no início, vi que a instrutora adicionou no construtor da classe usuário, validações do cpf. Isso não fere os princípios de boas práticas da programação? a classe de domínio deve representar uma entidade que irá ser persistida, não faz sentido ela validar cpf no seu construtor. A arquitetura está desacoplada, mas ao validar um cpf no construtor você está ferindo um dos princípios SOLID de responsabilidade única.