Cześć. Kurcze mam do was takie pytanie bo Piotr Gankiewicz w swoim kursie https://piotrgankiewicz.com/courses/becoming-a-software-developer/ mówił że modele domenowepowinny być rozbudowane nie powinny być anemiczne i dodaje walidację itd:
wygląda to mniej wiecej tak:
public class Category
{
public long Id { get; protected set; }
public string Name { get; protected set; }
public string Description { get; protected set; }
public virtual ICollection<Tenure> Tenures { get; protected set; }
protected Category()
{
}
public Category(string name, string description)
{
SetName(name);
SetDescription(description);
}
public void SetName(string name)
{
if (string.IsNullOrWhiteSpace(name))
{
throw new Exception(Errors.IncorrectNameCategory);
}
Name = name;
}
public void SetDescription(string description)
{
if (string.IsNullOrWhiteSpace(description))
{
throw new Exception(Errors.IncorrectDescription);
}
Description = description;
}
}
a czytałem ostatnio o SOLID a dokładnie o regułę Single responsibility a dokładnie że każda klasa powinna być odpowiedzialna za jedną konkretną rzecz. i teraz się trochę pogubiłem :(