Программная инженерия Дмитриев Андрей Владиславович 2008
Шаблоны проектирования Англ. design pattern. Шаблон (паттерн) представляет собой формализованное описание часто встречающейся задачи проектирования, удачное решение данной задачи, а также рекомендации по применению этого решения в различных ситуациях. Шаблон проектирования обязательно имеет одно или несколько общеупотребимых наименований. Рекомендуемая книга: Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес. "Приемы объектно- ориентированного проектирования. Паттерны проектирования"
Почему? Название прижилось в результате выхода в 70-х годах в свет книги по архитектуре (Кристофер Александер) 1987 г. К.Бек и В.Каннигем эти идеи применены в разработке графических оболочек на языке SmallTalk г. Э.Гамма начал писать докторскую о приложении идей шаблонов к ПО.
Преимущества Модель системы, построенная в терминах паттернов проектирования, фактически является структурированным выделением тех элементов и связей, которые значимы при решении поставленной задачи Модель более проста и наглядна в изучении, чем стандартная модель Позволяет глубоко и всесторонне проработать архитектуру разрабатываемой системы с использованием специального языка Повышает устойчивость системы к изменению требований Упрощает последующую доработку системы Незаменимы для общения разработчиков друг другом
Базовые паттерны Abstract factory Adapter Composite Decorator Factory method Observer Strategy Template Method
Общая классификация Шаблоны создания. Структурные шаблоны. Поведенческие шаблоны. Шаблоны, относящиеся к многопоточному проектированию.
Паттерны создания Fred fred = new Fred(); Обычный способ создания экземпляра: Существуют альтернативные способы создания: 1.Factory 2.Abstract factory 3.Builder 4.Prototype 5.Singleton
Структурные паттерны Adapter Decorator Facade Proxy
Поведенческие паттерны Iterator Observer Strategy Visitor
Cсылки Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес. "Приемы объектно-ориентированного проектирования. Паттерны проектирования"