Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Термины / Шаблон проектирования (Design Pattern)

Шаблон проектирования (Design Pattern)

Шаблон проектирования (Па́ттерн от англ. pattern — шаблон, образец) заготовка решения или архитектурной конструкции, используемая неоднократно. Шаблон может быть как способом решения задачи, так и вполне законченной её реализацией (такой как многие элементы из Boost, Loki).
Наиболее распространенными являются шаблоны GoF

+ Показать
и Loki. Андрей Александреску ( создатель Loki и соразработчик STL. ) начал разрабоку Loki для книги "Modern C++ Design" (1998), где использовал наиболее часто встречающиеся шаблоны проектирования и дал их определение в своей библиотеке.

В зависимости от задач, выделяют 3 типа шаблонов:

  • порождающие паттерны
  • структурные паттерны
  • паттерны поведения

В игровой индустрии широко находят применение порождающие паттерны: Абстрактная фабрика (Abstract Factory) — создает объекты похожих классов. Одиночка (Singleton) — обеспечивает присутствие только одного экземпляра класса. Так же для увеличения скорости разработки используются различного рода паттерны для управления динамической памятью  Умные указатели (Smart pointer).

Пример простейшей реализации паттерна Одиночка на языке С++:

class Singleton()
{
  Singleton(){};
    Singleton(const Singleton& root);
    Singleton& operator=(const Singleton&);
public:
        static const Singleton& Instance()
        {
                static Singleton instance;
                return instance;
        }
};
Шаблон "Одиночка" является не только наиболее часто используемым и спорным шаблоном, но и излюбленным вопросом на собеседовании в различных аутсорсинговых компаниях.

Что такое Шаблон проектирования (Design Pattern)?

27 августа 2013

#шаблоны, #архитектурный дизайн, #ООД, #ООП


Обновление: 8 ноября 2013

2001—2017 © GameDev.ru — Разработка игр