Achei legal a abordagem hands on. Realmente é um grande problema estudar arquitetura, pois quando se lê um livro como Clean Architecture ao chegar no final fico com uma sensação de subjetividade imensa. Fica aquela dúvida: “Será que de fato eu entendi o que autor quis dizer?”
Quando se fala de adoção arquitetural surgem mais dúvidas ainda. Depois de obter diversas informações sobre boas práticas, benefícios e etc. Torna-se difícil apontar os aspectos importantes na tomada de decisão para cada tipo de arquitetura.
Se existisse algum conteúdo com exemplos de tipos de projetos que se relacionam com cada tipo de arquitetura seria bem interessante.
Tenho um aplicação desenvolvida há 3 anos, trata-se de um mock server API. Ele serve de laboratório para diversas abordagens técnicas. Possui algumas decisões ruins embarcadas nele, devido as necessidades de agilidade em sua aplicação para um cliente específico em um momento crítico. Hoje o projeto passa por uma modularização visando promover melhor manutenibilidade, adotei conceitos de SOLID desde o início o que facilita este trabalho.
Por se tratar de meu cobaia, pretendo criar uma nova brach para um refactoring adotando os conceitos de Clean Code (na prática mudam alguns detalhes).
Ok! Para uma aplicação de prática tecnica ótimo, mas me vem uma pergunta: Como eu saberia dizer se a adoção de Clean Archtecture, seria algo ideial para este projeto? Que aspectos eu deveria ficar atendo para responder esssa pergunta?
É um projeto desenvolvido em Java e Spring Boot. Alguns aspectos abordados pelo Clean Archtecture o Sprigng Boot já provém como o padrão Repository (provido pelo Spring Data), já desaclopa totalmente a infraestura de dados do domínio da aplicação, isso ocorre também em outras abstrações relacionadas a Logs, Filas…
Então. Que aspectos olhar para tomar uma boa decisão arquitetural?