Изменения документа Анемичная или богатая модель
                  Редактировал(а) Alexandr Fokin 2025/05/30 14:06
              
      
      От версии  2.8 
    
    
              отредактировано Alexandr Fokin
        
на 2025/05/30 14:06
     на 2025/05/30 14:06
      Изменить комментарий:
              Редактировать комментарий
          
         
      К версии  2.1 
    
    
              отредактировано Alexandr Fokin
        
на 2024/01/04 20:21
     на 2024/01/04 20:21
      Изменить комментарий:
              Renamed back-links.
          
         Сводка
- 
          Объекты (1 изменено, 0 добавлено, 0 удалено)
Подробности
- XWiki.XWikiComments[0]
-   - Комментарий
-   ... ... @@ -1,5 +1,1 @@ 1 1 Мнение автора: на основании своего опыта я выступаю скорее за анемичную модель: когда сущность в основном контейнер для данных, почти не содержащий логику, и наборе команд/сервисов для взаимодействия с ними (и именно на команды ложиться ответственность за сохранение консистентности агрегатов). 2 -\\Для меня вполне допустим следующий вариант: в доменной логике мы не создаем и не редактируем сущности напрямую, а делаем это через ISetter компонент. В контракт конкретного ISetter мы закладываем способы создания и изменения сущности. В таком случае у нас есть компонент, который указывает на контракт и допустимые способы взаимодействия с конкретной сущностью. 3 -Пример поведения, располагаемого в ISetter: 1) типизированные билдеры под конкретные сценарии использования (инварианты), 2) взаимодействие со связанными сущностями (родительская-дочерняя) (добавление, смена родительской сущности), 3) вычисляемые свойства (которые меняются при изменении полей). 4 - 5 -У этого подхода еще есть плюс, связанный с ExpressionTree. А именно мы легко можем строить Expression (например для проекции или Update запроса) (открытые setter). 
 
