Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
от 5 курса и руслана.doc
Скачиваний:
3
Добавлен:
22.11.2019
Размер:
533.5 Кб
Скачать

34 Архитектурные шаблоны. Поток данных

Описание Система состоит из функциональных модулей, которые получают на входе данные и преобразуют их некоторым образом в выходные данные (конвейерный подход). Каждый шаг обработки данных реализован в виде преобразования. Преобразования могут выполняться последовательно или параллельно, обработка данных может быть пакетной (пакетный последовательный паттерн) или поэлементной.

Преимущества Возможность повторного использования преобразований, простота в понимании, возможность модификации системы посредством добавления новых преобразований. Данный паттерн прост в реализации как для последовательных, так и для параллельных систем.

Недостатки Необходимость использования некоего общего формата данных, который должен распознаваться всеми преобразованиями. Каждое преобразование либо следует согласовывать со смежными преобразованиями относительно формата преобразовываемых данных, либо необходимо использовать стандартный формат для всех обрабатываемых данных.

Взаимодействующие подсистемы со сложными форматами ввода - вывода и большим количеством разнообразных событий достаточно сложно проектировать с использованием данного паттерна, поскольку трудно прогнозировать поток обрабатываемых данных.

35 Архитектурные шаблоны. Централизованное управление Вызов - возврат (сценарий транзакции - частный случай).

Описание Вызов программных процедур осуществляется "сверху - вниз", то есть управление начинается на вершине иерархии процедур и через вызовы передается на нижние уровни иерархии. Рекомендации Применима только в последовательных системах, то есть в таких системах, в которых процессы должны происходить последовательно.

Преимущества Простой анализ потоков управления. Последовательные системы легче проектировать и тестировать. Недостатки Сложно обрабатывать исключительные ситуации.

Диспетчер

Описание Один системный компонент назначается диспетчером и управляет запуском и завершением других процессов системы и координирует эти процессы. Процессы могут протекать параллельно.

Рекомендации Применяется в системах, в которых необходимо организовать параллельные процессы, но может использоваться также и для последовательных систем, в которых- управляющая программа вызывает отдельные подсистемы в зависимости от значений некоторых переменных состояния.

Пример Можно использовать в системах реального времени, где нет чересчур строгих временных ограничений (в так называемых "мягких" системах реального времени).

36 Архитектурные шаблоны. Управление, основанное на событиях Передача сообщений

Описание В рамках данного паттерна событие представляет собой передачу сообщения всем подсистемам. Любая подсистема, которая обрабатывает данное событие, отвечает на него.

Рекомендации Данный подход эффективен при интеграции подсистем, распределенных на разных компьютерах, которые объединены в сеть.