Страница курса Паттерны проектирования — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Необходимые факты из ООП)
(Паттерны поведения)
Строка 58: Строка 58:
  
 
=== Паттерны поведения ===
 
=== Паттерны поведения ===
 +
 +
==== Цепочка обязанностей (Chain of Responsibility) ====
 +
 +
==== Команда ====
 +
 +
==== Посредник (Mediator) ====
 +
 +
==== Хранитель (Memento) ====
 +
 +
==== Наблюдатель (Observer) ====
 +
 +
==== Состояние (State) ====
 +
 +
==== Стратегия ====
 +
 +
==== Посетитель (Visitor) ====

Версия 08:58, 17 июля 2014

План лекций (набросок)

Литература

  1. Д. Влиссидес, Э.Гамма, Р. Хелм, Р. Джонсон. Приёмы объектно ориентированного проектирования.Паттерны проектирования
  2. Фримен Р., Фримен Л., Сьерра К., Бейтс Б. - Паттерны проектирования
  3. Гранд М. - Шаблоны проектирования в Java
  4. Смит Д. Элементарные шаблоны проектирования (2013)
  5. Стерлинг С., Массен О. Применение шаблонов Java
  6. Обзор паттернов проектирования на citforum.ru
  7. Шпаргалка по шаблонам проектирования на Хабрахабре
  8. Шпаргалка по шаблонам проектирования на itdumka.com.ua

Типы заданий

  • По системе классов нарисовать UML-диаграмму
  • По UML-диаграмме создать систему классов
  • Реализовать задачу с применением данного паттерна и сдать отчет в указанном виде (вид отчета на паттерны разработать)
  • В коде увидеть паттерн
  • Переделать код без паттерна в код с паттерном

Необходимые факты из ООП

Ранее известные паттерны

  • Упаковка параметров
  • Делегирование
  • Итератор
  • Выполнение операции для элементов полиморфного контейнера

Паттерны GoF

Порождающие паттерны

Абстрактная фабрика

Строитель (Builder)

Фабричный метод

Прототип

Singleton

Структурные паттерны

Адаптер

Мост (Bridge)

Компоновщик (Composite)

Декоратор

Фасад

Приспособленец (Flyweight)

Заместитель (Proxy)

Паттерны поведения

Цепочка обязанностей (Chain of Responsibility)

Команда

Посредник (Mediator)

Хранитель (Memento)

Наблюдатель (Observer)

Состояние (State)

Стратегия

Посетитель (Visitor)