TaskItem es una entidad del dominio que representa una tarea en el sistema.
Rol en Clean Architecture:
-
Parte del core de la aplicación en la capa del dominio
-
Encapsula lógica de negocio y reglas relacionadas con la gestión de tareas
-
Contiene principios de Domain Driven Design con el patrón Aggregate Root
-
Gestiona transiciones de estado a través de métodos del dominio: TaskItem.Complete, TaskItem.AssignTo, TaskItem.UpdatePriority
-
Mantiene invariantes y reglas de negocio tales como validación y restricciones
-
Emite eventos del dominio para comunicar ocurrencias importantes del dominio
Características clave:
-
Contiene todos los datos necesarios para representar una tarea
-
Valida reglas de negocio internamente -longitud de título, fecha de vencimiento, transiciones de estado-
-
Gestiona la colección de eventos del dominio para desacoplamiento de la infraestructura y facilidad del testing
-
Utiliza el patrón Factory -verTaskItem.Create- para creación consistente de entidades
-
Aplica restricciones de negocio: no se puede modificar tareas completadas, etc.
Dependencias:
-
Solo depende de otros tipos de la capa del dominio -verDomainEvent, Result, TaskErrors, etc.-
-
Sin dependencias en capas de infraestructura o aplicación -respetala dirección de las dependencias en Clean Architecture-
Definition at line 50 of file TaskItem.cs.