- •1. Базовые сведения о шаблонах проектирования
- •2. Структурные шаблоны
- •2.1. Адаптер (Adapter)
- •2.2. Декоратор (Decorator)
- •2.3. Заместитель (Proxy)
- •2.4. Компоновщик (Composite)
- •2.5. Мост (Bridge)
- •2.6. Приспособленец (Flyweight)
- •2.7. Фасад (Facade)
- •3. Порождающие шаблоны
- •3.1. Абстрактная фабрика (Abstract factory)
- •3.2. Одиночка (Singleton)
- •3.3. Отложенная инициализация (Lazy initialization)
- •3.4. Прототип (Prototype)
- •3.5. Пул объектов (Object pool)
- •3.6. Строитель (Builder)
- •3.7. Фабричный метод (Factory method)
- •4. Шаблоны поведения
- •4.1. Итератор (Iterator)
- •4.2. Команда (Command)
- •4.3. Наблюдатель (Observer)
- •4.4. Нулевой объект (Null object)
- •4.5. Посетитель (Visitor)
- •4.6. Посредник (Mediator)
- •4.7. Состояние (State)
- •4.8. Стратегия (Strategy)
- •4.9. Цепочка обязанностей (Chain of responsibility)
- •4.10. Шаблонный метод (Template method)
- •5. Антипаттерны
- •Литература
Литература
1.Влиссидес, Д. Применение шаблонов проектирования. Дополнительные штрихи. / Д. Влиссидес. – М. : Издат. дом «Вильямс», 2003. – 144 с.
2.Гамма, Э. Приёмы объектно-ориентированного проектирования. Пат-
терны проектирования. / Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес. – Спб. :
Питер, 2013. – 368 с.: ил.
3.Мартин, Р. С. Принципы, паттерны и методики гибкой разработки на языке C#. / Р. С. Мартин, М. Мартин. – Спб. : ООО «Издательство «Символ-
плюс», 2011. – 768 с.
4.Нильссон, Дж. Применение DDD и шаблонов проектирования. Про- блемно-ориентированное проектирование приложений с примерами на C# и
.NET. / Дж. Нильссон. – М. : Издат. дом «Вильямс», 2008. – 560 с.
5.Цвалина, К. Инфраструктура программных проектов: соглашения, идиомы и шаблоны для многократно используемых библиотек .NET. / К. Цвалина, Б. Адамс. – М. : Издат. дом «Вильямс», 2011. – 416 с.
6.Фаулер, М. Шаблоны корпоративных приложений. / М. Фаулер. – М. : Издат. дом «Вильямс», 2011. – 544 с.
7.Фаулер, М. Рефакторинг. Улучшение существующего кода. / М. Фаулер.
–Спб. : ООО «Издательство «Символ-плюс», 2013. – 432 с.
61