Supongamos que estamos modelando un formulario utilizando DDD; el formulario puede tener cierto tipo de reglas comerciales asociadas, tal vez deba especificar un ingreso si no es un estudiante y se le exige que incluya a sus hijos si indica que está casado. Y si especificó un país, debería tener un país válido.
¿Este tipo de validación vive en el dominio o capa de aplicación? Algunas otras cuestiones que estaba considerando:
-
Ciertos marcos, como Laravel, proporcionan reglas de validación que pueden validar la entrada antes de que una solicitud llegue al controlador. ¿Se rompe la DDD si la validación se realiza a ese nivel?
-
Para casos como determinar si el país es válido, normalmente solo consultaré una tabla de base de datos de todos los países del mundo. Sin embargo, en DDD, es probable que esto se haga (a mi entender) en la capa de dominio. ¿Se permite que la capa de dominio acceda a la base de datos o debo usar una búsqueda que no sea de SQL para determinar un país válido?
-
¿Es necesario validar la entrada tanto en la aplicación como en la capa de dominio?