Шаблон проектирования - Обзор
Шаблоны проектирования представляют собой передовой опыт, используемый опытными разработчиками объектно-ориентированного программного обеспечения. Шаблоны проектирования - это решения общих проблем, с которыми разработчики программного обеспечения сталкивались во время разработки программного обеспечения. Эти решения были получены путем проб и ошибок многочисленными разработчиками программного обеспечения в течение довольно значительного периода времени.
Что такое «Банда четырех» (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. |