Re: Помогите с анемичной моделью
От: stomsky Россия  
Дата: 12.09.11 11:54
Оценка:
Здравствуйте, Аноним, Вы писали:

А>В домене имеем класс и его подклассы:

А>...
А>В рич модели все просто, весь код в методах соответствующих типов. И при итерации по колекции я просто вызываю метод. А как подобное сделать на анемике? Подскажите пожалуйста.
Я не бог весть какой архитектор в части Rich/Anemic, но сдается мне, что нужно для начала определиться какую функцию у тебя выполняет класс "Notepad" и его подклассы: хранит данные или агрегирует в себе методы обработки данных.
Допустим "Notepad" — хранит данные, т.е.
class Notepad
{
  public string Field1 { get; set; }
  public int Field2 { get; set; }
  ...
}

Тогда, с точки зрения Anemic, нужно завести второй класс, агрегирующий методы обработки Notepad:
class NotepadService
{
  public  abstract bool AddNote(Notepad mp, string text);
  ...
}

А вот в части наследования надо вообще еще очень хорошо подумать: надо ли оно в данном конкретном случае?
Если надо, то что именно должно наследоваться: контейнер данных (производные классы будут иметь дополнительные поля), или сервис (методы разные), или и то и другое.
В общем настледование — отдельная песня.
Красота — наивысшая степень целесообразности. (c) И. Ефремов
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.