Questo è come chiedere se puoi usare gli utensili per mangiare il gelato. (Sì, puoi. Raccomando un cucchiaio.)
CQRS ti chiede di non mescolare la complessità necessaria per eseguire query con la complessità necessaria per l'aggiornamento.
Hexagonal Architecture ti chiede di non mescolare la complessità delle porte di input e output con la tua logica di applicazione centrale.
Quindisì,puoifareentrambelecose.Mafarneunononsignificaaverfattol'altro.
Selohaifattopotrebbeessereschematizzatoinquestomodo:
Questomostradovevannolecose.Immaginagliadattatoritragliesagonicheaiutanoaisolarelalogicacentraledell'applicazionedallemodifichediDBedell'interfacciautente.
Moltidiquestiprincipidifantasiasonoinrealtàsoloperisolarelecose.Nonèchenonpuoicrearequalcosachefunzioniseliignori.Maseguirlisignificachel'impattodiuncambiamentodeirequisitièisolato.Nonsemplificalascritturadelcodicetantoquantorendepiùsemplicelamanutenzionedelcodice.
Hexagonal, onion e clean architecture sembrano tutti nomi diversi per la stessa cosa. Gli autori amano rubare un'idea e dargli un nuovo nome.