Изменения документа Тема. Целостность агрегатов

Редактировал(а) Alexandr Fokin 2025/01/11 14:27

<
От версии < 1.2 >
отредактировано Alexandr Fokin
на 2024/01/04 20:05
К версии < 1.11
отредактировано Alexandr Fokin
на 2025/01/11 14:27
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Название
... ... @@ -1,1 +1,1 @@
1 -Целостность агрегатов
1 +Тема. Целостность агрегатов
Содержимое
... ... @@ -1,0 +1,46 @@
1 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
2 +|(% style="width:285px" %)Строгие конструкторы.|(% colspan="1" rowspan="2" style="width:1086px" %)(((
3 +Инварианты состояний.
4 +Недопуск некорректного состояния.
5 +Изменение в перечне свойств повлияет на строгий конструктор, который по цепочке отобразит это изменение на потребителей сущности (меньше шансов забыть обновить компонент потребитель).
6 +При этом допустимо существования пустого конструктора (например с пометкой obsolete), который может использоваться для сериализации или тестов, но не используется в доменной логике.
7 +
8 +* Прерывание операции после первой ошибки.
9 +* Иммутабельное состояние.
10 +* Сброс состояния до модификации.
11 +)))
12 +|(% style="width:285px" %)Целостность коллекций.
13 +|(% style="width:285px" %)Строить (Builder) объектов.|(% style="width:1086px" %)
14 +)))
15 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
16 +[[DDD | Domain-driven design>>doc:Архитектура и модели.Группа\. Архитектурные подходы.DDD | Domain-driven design.WebHome]]
17 +
18 +[[GoF Design Patterns>>doc:Архитектура и модели.Паттерны проектирования.GoF Design Patterns.WebHome]]
19 +
20 +[[Defensive coding | Защитное программирование>>doc:Архитектура и модели.Про приложение.Некоторые подходы к разработке.Defensive coding.WebHome]]
21 +)))
22 +|(% style="width:95px" %) |(% style="width:1390px" %)
23 +
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 +----