En DDD nunca debe permitir que las entidades ingresen un estado no válido. Dicho esto, ¿cómo manejas la validación de una restricción única?DDD - Validación de la restricción única
La creación de una entidad no es un problema real. Pero supongamos que tiene una entidad que debe tener un nombre único y hay mil instancias de este tipo de entidad: no están en la memoria sino que están almacenados en una base de datos. Ahora supongamos que quieres cambiar el nombre de una instancia.
No puede usar un setter ... el objeto podría entrar en un estado no válido - debe validar contra la base de datos.
¿Cómo maneja este escenario en un entorno web?
Gracias por su respuesta. Estoy más o menos de acuerdo con lo que dices, pero me gustaría escuchar lo que piensan los puristas: "una restricción de exclusividad puede reducirse a una excepción de persistencia", no ser un estado inválido ... Y para el modelo de vista, casi siempre uso pero hay un momento en que tendrá que actualizar su modelo "real" con los datos del Modelo de Vista y todavía tendrá el mismo problema. – W3Max
DDD no es una religión; no se trata de pureza, se trata de claridad. En la medida en que se trata de pureza, descubrirá que mi pensamiento tiende a alinearse bastante cerca de la DDD canónica la mayor parte del tiempo. Sin embargo, si desea ver la solución de la singularidad fuera de la capa de persistencia, puede intentar ajustar el patrón de Especificación para que se ajuste a sus necesidades. – JasonTrue