Шаблоны проектирования
-
Обзор книги «Design Patterns»
- Книга описывает 23 классических шаблона проектирования программного обеспечения.
- Авторы — Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес.
- Книга была опубликована в 1994 году и оказала значительное влияние на разработку ПО.
-
Содержание книги
- В первых двух главах обсуждаются методы объектно-ориентированного программирования.
- Остальные главы описывают шаблоны проектирования.
- Примеры приведены на C++ и Smalltalk.
-
История разработки и публикации
- Работа над книгой началась в 1990 году.
- Книга была представлена на конференции OOPSLA в 1994 году.
-
Вступление
- Обсуждаются принципы объектно-ориентированного программирования и преимущества интерфейсов.
- Наследование критикуется за повторное использование «белого ящика» и предлагается использовать композицию объектов.
- Обсуждаются параметризованные типы (дженерики) и их эффективность.
-
Типы шаблонов проектирования
- Созидательные шаблоны создают объекты.
- Структурные шаблоны относятся к классам и составу объектов.
- Поведенческие шаблоны связаны с взаимодействием между объектами.
-
Признание и критика
- В 2005 году книга получила награду от ACM SIGPLAN.
- Критика направлена на то, что шаблоны являются обходными путями для недостающих функций в C++.
- Некоторые языковые возможности могут упростить реализацию шаблонов проектирования.
-
Переработка книги
- В 2005 году авторы обсуждали пересмотр книги и пришли к выводу о необходимости изменений и добавления новых шаблонов.
- Гамма хотела исключить шаблон синглтона, но мнения авторов разделились.