Estoy tratando de comprender cómo funcionan las entidades en contextos acotados múltiples.Entidades en contextos delimitados en Diseño controlado por dominio
Dado un empleado de una empresa. En (por ejemplo) el contexto de Recursos humanos, esta persona tiene un nombre, un apellido, una dirección, un número de referencia de sueldo y una cuenta bancaria. Pero en el contexto de Contabilidad, todo lo relevante es el número de referencia salarial y la cuenta bancaria.
¿Tiene una entidad de empleado en el contexto de recursos humanos y un valor de tipo (por ejemplo, SalariedEmployee
) en el contexto de contabilidad?
class Employee
{
public BankAccount BankAcountDetails { get; set; }
public string FullName { get; set; }
public Address ResidentialAddress { get; set; }
public string SalaryRef { get; set; }
}
SalariedEmployee
clase (??): Empleado del valor de tipo
class SalariedEmployee
{
public SalariedEmployee(string salaryRef, BankAccount bankAcountDetails)
{
...
}
public string SalaryRef { get; }
public BankAccount BankAcountDetails { get; }
}
¿El HRService en el contexto acotado devolver esta información? ¿O usas la clase Empleado en ambos contextos?
¿Está diciendo que el ejemplo que di más arriba es una buena idea o que es "permisible" y común en DDD? – Asher
Es una buena idea. Deja muy en claro que el contexto contable no diferencia entre empleados asalariados en lo que respecta a la lógica de negocios. Solo tiene que sentirse seguro de que el contexto contable nunca necesitará diferenciarlos. –