Исходный код вики Тема. Целостность агрегатов
Редактировал(а) Alexandr Fokin 2025/01/11 14:27
Последние авторы
| author | version | line-number | content |
|---|---|---|---|
| 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 | ---- |