Каталог паттернов для архитектуры корпоративных приложений (PoEAA)
                        
                    Эта статья посвящена всем паттернам с каталога для архитектуры корпоративных приложений (Patterns of enterprise application architecture (PoEAA)) по мотивам книги Мартина Фаулера
Domain Logic паттерны
- Transaction Script — способ организации бизнес-логики по процедурам, каждая из которых обслуживаетодин запрос, инициируемый view слоем
 - Модель предметной области (Domain Model) — объектно-ориентированный шаблон проектирования. Цель проектирования предметной области – определение бизнес-объектов, которые представляют реальные сущности предметной области. При использовании модели предметной области бизнес-сущности и сущности предметной области включают и поведение, и структуру.
 - Table Module — Объект, охватывающий логику обработки всех записей хранимой или виртуальной таблицы базы данных
 - Service Layer — Паттерн Service Layer определяет для приложения границу и набор допустимых операций с точки зрения взаимодействующих с ним клиентских компонентов. Он инкапсулирует бизнес-логику приложения, управляя транзакциями и управляя ответами в реализации этих операций.
 
Data Source Architectural паттерны
Статья по Data Source Architectural паттернам:
- Table Data Gateway (Шлюз к данным таблицы) — объект выступает в качестве шлюза между данными в приложении и в БД. Один объект работает сразу со всеми записями в таблице.
 - Row Data Gateway (Шлюз к данным записи) — объект выступает в роли шлюза к отдельной записи в источнике данных. Один экземпляр на одну запись.
 - Active Record (Активная запись) — объект, выполняющий роль оболочки для строкитаблицыили представления базыданных. Он инкапсулирует доступ к базе данных и добавляетк даннымлогику домена
 - Data Mapper — осуществляет передачу данных между объектами и базой данных, сохраняя последние независимыми друг от друга и от самого mapper'a.
 
Object-Relational Behavioral паттерны
- Unit of Work — содержит список объектов, охватываемых бизнес-транзакцией, координирует запись изменений в базу данных и разрешает проблемы параллелизма
 - Identity Map — гарантирует, что каждый объект будет загружен из базыданных только один раз, сохраняя загруженный объект в специальной коллекции. При получении запроса просматривает коллекцию в поисках нужного объекта
 - Lazy Load — объект, который не выгружает все требующиеся данные сразу, однако может загрузить их в случае необходимости.
 
Object-Relational Structural паттерны
Object-Relational Structural паттерны:
- Identity Field — cохраняет идентификатор записи базы данных для поддержки соответствия между объектом приложения и строкой базы данных.
 - Foreign Key Mapping — отображает ассоциации между объектами на ссылки внешнего ключа между таблицами базы данных
 - Association Table Mapping — сохраняет множество ассоциаций в виде таблицы, содержащей внешние ключи таблиц, связанных ассоциациями
 - Dependent Mapping — передает некоторому классу полномочия по выполнению отображения для дочернего класса
 - Embedded Value — отображает объект на несколько полей таблицы, соответствующей другому объекту
 - Serialized LOB — сохраняет граф объектов путем их сериализациив единый крупный объект (Large Object — LOB) и помещает его в поле базы данных
 - Наследование с одной таблицей (Single Table Inheritance) — представляет иерархию наследования классов в виде одной таблицы, столбцы которой соответствуют всем полям классов, входящих в иерархию
 - Наследование с таблицами для каждого класса (Class Table Inheritance) — представляет иерархию наследования классов, используя по одной таблице для каждого класса
 - Наследование с таблицами для каждого конкретного класса (Concrete Table Inheritance) — представляет иерархию наследования классов, используя по одной таблице для каждого конкретного класса этой иерархии
 - Преобразователи наследования (Inheritance Mappers) — Структура, предназначенная для организации преобразователей, которые работают с иерархиями наследования
 
Object-Relational Metadata Mapping паттерны
- Metadata Mapping — хранит описание деталей объектно-реляционного отображения в виде метаданных
 - Объект запроса (Query Object) — это структура объектов, которая может интерпретироваться в SQL-запрос. Можно создавать такой запрос ссылаясь на классы и поля так же как на таблицы и столбцы. Таким образом создаётся независимость разработчика от струткуры БД и конкретной реализации БД.
 - Repository — это посредник между domain слоем и mapping слоем, используя интерфейс, схожий с коллекциями для доступа к объектам области определения.
 
Web Presentation паттерны
- Model View Controller
 - Page Controller
 - Front Controller
 - Template View
 - Transform View
 - Two-Step View
 - Application Controller
 
Distribution паттерны
- Remote Facade
 - Data Transfer Object
 
Offline Concurrency паттерны
Подборка Offline Concurrency паттернов
- Optimistic Offline Lock
 - Pessimistic Offline Lock
 - Coarse Grained Lock
 - Implicit Lock
 
Session State Patterns
Подборка паттернов для хранения состояния сеанса
- Client Session State
 - Server Session State
 - Database Session State
 
Base Patterns
- Gateway
 - Mapper
 - Layer Supertype
 - Separated Interface
 - Registry
 - Value Object
 - Money
 - Special Case
 - Plugin
 - Service Stub
 - Record Set
 
Comments:
            
            
                Please log in
                to be able add comments.