digital-garden/dev/architecture/Паттерн проектирования.md

52 lines
3.3 KiB
Markdown
Raw Normal View History

---
aliases:
- паттерн
- шаблон проектирования
tags:
- maturity/🌱
2024-10-01 08:52:43 +03:00
date: 2023-11-05
linked:
---
- [[Dependency Injection]]
2024-10-04 01:19:00 +03:00
- [[Порождающий паттерн проектирования]]
- [[Builder Pattern|Builder Pattern]]: строит объекты поэтапно, разделяя процесс создания и внешний вид.
2024-11-03 04:10:11 +03:00
- Abstract Factory: создаёт группы связанных элементов.
- Prototype: создаёт копии полностью подготовленных экземпляров.
- Singleton: One and Only — особый класс, имеющий только один экземпляр.
- Adapter: Universal Plug — соединяет объекты с разными интерфейсами.
- Bridge: Function Connector — связывает, как объект работает, с тем, что он делает.
- Composite: Tree Builder — формирует древовидные структуры из простых и сложных частей.
- Decorator: Customizer — добавляет функции объектам, не меняя их основу.
- Facade: One-Stop-Shop — представляет всю систему через один упрощённый интерфейс.
- Flyweight: Space Saver — эффективно использует небольшие, многократно используемые элементы.
- Proxy: Stand-In Actor — представляет другой объект, управляя доступом или действиями.
- Chain of Responsibility: Request Relay — передаёт запрос по цепочке объектов до его обработки.
- Command: Task Wrapper — превращает запрос в объект, готовый к выполнению.
- Iterator: Collection Explorer — последовательно получает доступ к элементам коллекции.
- Mediator: Communication Hub — упрощает взаимодействие между различными классами.
- Memento: Time Capsule — сохраняет и восстанавливает состояние объекта.
- Observer: News Broadcaster — уведомляет классы об изменениях в других объектах.
- Visitor: Skillful Guest — добавляет новые операции классу, не изменяя его.
- [[../../../../_inbox/Transactional Inbox|Transactional Inbox]]
- [[Transactional Outbox]]
***
## Мета информация
**Область**:: [[../../meta/zero/00 Архитектура ПО|00 Архитектура ПО]]
**Родитель**:: [[Архитектурная концепция]]
**Источник**::
**Автор**::
**Создана**:: [[2023-11-05]]
### Дополнительные материалы
-
### Дочерние заметки
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
<!-- SerializedQuery: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
- [[MVC]]
- [[Dependency Injection]]
2024-10-04 01:19:00 +03:00
- [[Порождающий паттерн проектирования]]
- [[Transactional Outbox]]
<!-- SerializedQuery END -->