Design patterns учебник
Начало работы с шаблонами проектирования
Поиск…
замечания
В этом разделе представлен обзор того, какие шаблоны проектирования и почему разработчик может захотеть его использовать. Примеры могут служить графическим представлением шаблона, сценария, состоящего из проблемы с учетом контекста, в котором может использоваться шаблон, и упоминания возможных компромиссов.
Следует также упомянуть о любых крупных предметах в шаблонах проектирования и ссылки на связанные темы. Поскольку Документация для шаблонов проектирования является новой, вам может потребоваться создать начальные версии этих связанных тем.
Вступление
Согласно Википедии :
[A] шаблон разработки программного обеспечения является общим многоразовым решением общей проблемы в данном контексте при разработке программного обеспечения. Это не готовый дизайн, который можно преобразовать непосредственно в исходный или машинный код. Это описание или шаблон для решения проблемы, которая может использоваться во многих разных ситуациях. Шаблоны проектирования - это формализованные передовые методы, которые программист может использовать для решения общих проблем при разработке приложения или системы.
(Получено: 2016-10-13)
Существует много признанных моделей проектирования программного обеспечения, и новые предлагаются на регулярной основе. Другие темы охватывают многие из наиболее распространенных шаблонов, а статья в Википедии содержит более обширный список.
Аналогичным образом, существуют различные способы классификации шаблонов проектирования, но исходная классификация:
- Создание шаблонов : Factory , Builder , Singleton и т. Д.
- Структурные шаблоны : адаптер , композитный , прокси-сервер и т. Д.
- Поведенческие модели : Итератор , Стратегия , Посетитель и т. Д.
- Шаблоны параллелизма : ActiveObject, Monitor и т. Д.
Идея шаблонов проектирования была расширена для шаблонов проектирования домена для таких областей, как дизайн пользовательского интерфейса, визуализация данных, безопасный дизайн, веб-дизайн и дизайн бизнес-модели.
Наконец, существует связанная концепция, называемая шаблоном архитектуры программного обеспечения, который описан как аналог шаблонов проектирования, применяемых к архитектурам программного обеспечения.