Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!Шпора по ООПиП (3).docx
Скачиваний:
35
Добавлен:
22.09.2019
Размер:
2.31 Mб
Скачать

Шаблоны параллельного программирования (Concurrency)

  • Active Object

  • Balking

  • Double checked locking

  • Guarded suspension

  • Half-Sync/Half-Async

  • Leaders/followers

  • Monitor Object

  • Reactor

  • Read write lock

  • Scheduler

  • Thread pool

  • Thread-Specific Storage

  • Single Thread Execution

MVC

  • Model-View-Controller (MVC) Модель-представление-контроллер

  • Model-View-Presenter

  • Presentation-Abstraction-Control

Enterprise

  • Business Delegate

  • Composite Entity/Составная Сущность

  • Composite View

  • DAO (Data Access Object) Объект Доступа к Данным

  • Dispatcher View

  • Front Controller

  • Intercepting Filter

  • Service Activator

  • Service Locator/Локатор Службы

  • Service to Worker

  • Session Facade/Фасад Сессии

  • Transfer Object Assembler

  • Transfer Object/Объект Перемещения

  • Value List Handler/Обработчик Списка Значений

  • View Helper

Unsorted

  • Property Container

  • Event Channel

  • Repository/Хранилище

Другие типы шаблонов

Также на сегодняшний день существует ряд других шаблонов:

  • Carrier Rider Mapper, предоставление доступа к хранимой информации

  • аналитические шаблоны, описывают основной подход для составления требований для программного обеспечения (requirement analysis) до начала самого процесса программной разработки

  • коммуникационные шаблоны, описывают процесс общения между отдельными участниками/сотрудниками организации

  • организационные шаблоны, описывают организационную иерархию предприятия/фирмы

  • Анти-паттерны (Anti-Design-Patterns) описывают как не следует поступать при разработке программ, показывая характерные ошибки в дизайне и в реализации.

66. Шаблон делегирования

В разработке ПО, шаблон делегирования (англ. delegation pattern) — это способ, которым объект внешне выражает некоторое поведение, но в реальности передаёт ответственность за выполнение этого поведения связанному объекту. Шаблон делегирования является фундаментальной абстракцией, которая поддерживает композицию (также называемую агрегацией), примеси (mixins) и аспекты (aspects).

Цель

Возможность изменить поведение конкретного экземпляра объекта вместо создания нового класса путем наследования.

Java

Простой пример

В этом примере на языке Java, класс C имеет метод-заглушку (method stub), который передаёт методы f() и g() классу A. Класс C делает вид, что он имеет атрибуты класса A.

Исходный текст на языке java  [скрыть]

class A {

void f() {

System.out.println("A: вызываем метод f()");

}

void g() {

System.out.println("A: вызываем метод g()");

}

}

class C {

// Создаём объект методы которого будем делегировать

A a = new A();

void f() {

a.f();

}

void g() {

a.g();

}

// прочие атрибуты

X x = new X();

void y() {

/* некоторые действия */

}

}

public class Main {

public static void main(String[] args) {

C c = new C();

c.f();

c.g();

}

}