Executando verificação de segurança...
1

Olá maniero, qdo vc diz para ter cuidado com a ideia de algo que aceite vários DBs diferentes, me parece que é algo contrário ao que geralmente ouvimos sobre clean arch e hexagonal, onde a recomendação é justamente criar o core da aplicação sem dependência de ferramentas externas, como o próprio DB. Se é isso mesmo, quais seriam os principais pontos que vc vê para defender essa ideia?

Carregando publicação patrocinada...
3

Sim, é o contrário mesmo. A experiência que eu tenho em 40 anos com vários sistemas,. fazendo ou dando consultoria, que usaram e não usaram isso, que tiveram todo tido de manutenção, sendo que eu não tenho que vender livros, curso, palestras ou consultoria cara que precisa criar complexidade, realmente não deve fazer essas coisas e deve seguir o YAGNI e o KISS, pelo simples fato que em 99,9% (número chutado obviamente) isso não se paga.

Eu sou extremamente crítico da complexidade. Quem vai adotar complexidade é que precisa justificar porque está fazendo isso.

Se você fizer isso paga o preço, independente de precisar ou não. E quase nunca precisa. Se não fizer, pagará um preço um pouco maior, não muito, para mudar se precisar. Quase nunca precisa e não paga. Então é uma decisão muito mais sensata. Se custasse um valor muito inferior fazer isso e mudasse com frequência, aí eu pensaria diferente. Até deixar de mudar, mesmo quando precisa, pode ser melhor que pagar esse preço. Além do que, conforme links que eu já passei, quase sempre, mesmo fazendo isso, a pessoa paga um preço para mudar também, além do preço pago para evitar custo da mudança, mas que quase nunca dá certo. As pessoas não notam a besteira porque quase nunca precisam, ou não ficam para ver quando precisa. O que as pessoas falam não é o mesmo do que acontece. O melhor é desenhar corretamente para não precisar mudar. Ou pagar o preço se precisar mudar.

Dá uma lida em https://pt.stackoverflow.com/q/441073/101. E depois faça perguntas específicas que eu respondo.

Obrigado pelo comentário.