Шаблон проектирования - Обзор

Шаблоны проектирования представляют собой передовой опыт, используемый опытными разработчиками объектно-ориентированного программного обеспечения. Шаблоны проектирования - это решения общих проблем, с которыми разработчики программного обеспечения сталкивались во время разработки программного обеспечения. Эти решения были получены путем проб и ошибок многочисленными разработчиками программного обеспечения в течение довольно значительного периода времени.

Что такое «Банда четырех» (GOF)?

В 1994 году четыре автора Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес опубликовали книгу под названием Design Patterns - Elements of Reusable Object-Oriented Software который положил начало концепции шаблона дизайна в разработке программного обеспечения.

Эти авторы вместе известны как Gang of Four (GOF). По мнению этих авторов, шаблоны проектирования в первую очередь основаны на следующих принципах объектно-ориентированного проектирования.

  • Программа для интерфейса, а не реализация

  • Предпочитайте композицию объекта наследованию

Использование шаблона дизайна

Шаблоны проектирования используются в двух основных случаях при разработке программного обеспечения.

Общая платформа для разработчиков

Шаблоны проектирования содержат стандартную терминологию и относятся к конкретному сценарию. Например, одноэлементный шаблон проектирования означает использование одного объекта, поэтому все разработчики, знакомые с одним шаблоном проектирования, будут использовать один объект и могут сообщить друг другу, что программа следует одноэлементному шаблону.

Лучшие практики

Шаблоны проектирования разрабатывались в течение длительного периода времени, и они обеспечивают наилучшие решения определенных проблем, возникающих при разработке программного обеспечения. Изучение этих шаблонов помогает неопытным разработчикам легко и быстро изучать дизайн программного обеспечения.

Типы шаблонов проектирования

Согласно справочнику по шаблонам проектирования Design Patterns - Elements of Reusable Object-Oriented Software, существует 23 шаблона проектирования, которые можно разделить на три категории: творческие, структурные и поведенческие. Мы также обсудим другую категорию шаблонов проектирования: шаблоны проектирования J2EE.

SN Узор и описание
1 Creational Patterns
Эти шаблоны проектирования позволяют создавать объекты, скрывая логику создания, а не создавать экземпляры объектов напрямую с помощью оператора new. Это дает программе больше гибкости в выборе объектов, которые необходимо создать для данного варианта использования.
2 Structural Patterns
Эти шаблоны проектирования касаются композиции классов и объектов. Концепция наследования используется для создания интерфейсов и определения способов компоновки объектов для получения новых функций.
3 Behavioral Patterns
Эти шаблоны проектирования специально предназначены для связи между объектами.
4 J2EE Patterns
Эти шаблоны проектирования особенно связаны с уровнем представления. Эти шаблоны определены Sun Java Center.