Изменения документа Тема. Целостность агрегатов
Редактировал(а) Alexandr Fokin 2025/01/11 14:27
<
>
отредактировано Alexandr Fokin
на 2024/01/04 20:09
на 2024/01/04 20:09
отредактировано Alexandr Fokin
на 2025/01/11 14:25
на 2025/01/11 14:25
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Название
-
... ... @@ -1,1 +1,1 @@ 1 -Целостность агрегатов 1 +Тема. Целостность агрегатов - Содержимое
-
... ... @@ -1,13 +1,46 @@ 1 1 |(% style="width:95px" %) |(% style="width:1390px" %)((( 2 -|Строгие конструкторы.| 3 -|Целостность коллекций.| 4 -|Строить (Builder) объектов.| 2 +|(% style="width:285px" %)Строгие конструкторы.|(% colspan="1" rowspan="2" style="width:1086px" %)((( 3 +Инварианты состояний. 4 +Недопуск некорректного состояния. 5 +Изменение в перечне повлияет на строгий конструктор, который по цепочке отобразит это изменение на потребителей сущности (меньше шансов забыть обновить компонент потребитель). 6 +При этом допустимо существования пустого конструктора (например с пометкой obsolete), который может использоваться для сериализации или тестов, но не используется в доменной логике. 7 + 8 +* Прерывание операции после первой ошибки. 9 +* Иммутабельное состояние. 10 +* Сброс состояния до модификации. 5 5 ))) 12 +|(% style="width:285px" %)Целостность коллекций. 13 +|(% style="width:285px" %)Строить (Builder) объектов.|(% style="width:1086px" %) 14 +))) 6 6 |(% style="width:95px" %) |(% style="width:1390px" %)((( 7 7 [[DDD | Domain-driven design>>doc:Архитектура и модели.Группа\. Архитектурные подходы.DDD | Domain-driven design.WebHome]] 8 8 9 9 [[GoF Design Patterns>>doc:Архитектура и модели.Паттерны проектирования.GoF Design Patterns.WebHome]] 19 + 20 +[[Defensive coding | Защитное программирование>>doc:Архитектура и модели.Про приложение.Некоторые подходы к разработке.Defensive coding.WebHome]] 10 10 ))) 11 11 |(% style="width:95px" %) |(% style="width:1390px" %) 12 12 13 - 24 +---- 25 + 26 +==== Внутренние ссылки: ==== 27 + 28 +====== Дочерние страницы: ====== 29 + 30 +{{children/}} 31 + 32 +====== Обратные ссылки: ====== 33 + 34 +{{velocity}} 35 +#set ($links = $doc.getBacklinks()) 36 +#if ($links.size() > 0) 37 + #foreach ($docname in $links) 38 + #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument()) 39 + * [[$escapetool.xml($rdoc.fullName)]] 40 + #end 41 +#else 42 + No back links for this page! 43 +#end 44 +{{/velocity}} 45 + 46 +----