Всем привет! Меня зовут Роман Сакутин и сейчас я хочу привести 3 примера использования паттернов GoF при разработке компьютерных игр с Unity и CSharp Дальше вы увидите примеры связанные со следующими шаблонами: — Visitor (Визитёр) — Observer (Наблюдатель) — Decorator (Декоратор) Visitor Визитёр — это паттерн который описывает операцию над объектами другого типа. При этому, мы выносим эту операцию из ответственности того, кто эту операцию совершает. Классический пример: у нас есть некая иерархия типов и есть ряд объектов, который имеют различный тип из этой иерархии. Нам нужно выполнить разные действия, для каждого объекта, в зависимости от его типа. Тогда нам нужно либо использовать большой свитч с выбором действия в зависимости от типа, либо воспользоваться этим паттерном. Пример из жизни:
Есть система который производит выстрел в сцене, и возвращает некую абстракцию Hit. Фактически, там скрывается конкретный тип попадания, либо по цели, либо по окружению. Попадания представляются т