Sobes.tech
Назад к вопросам
Junior — Middle
94

Можете ли Вы привести примеры паттернов проектирования из книги Gang of Four, которые использовали в своих проектах?

Компании, где спрашивали
WildberriesWildberries

Ответ от нейросети

sobes.tech AI

В проектах на Go часто использовал следующие паттерны из книги Gang of Four:

  • Singleton — для создания единственного экземпляра конфигурации приложения или логгера.
  • Factory Method — для создания объектов с разной реализацией интерфейса, например, разных видов хранилищ (файловое, в памяти, база данных).
  • Decorator — для динамического расширения функциональности, например, обертка логгера, добавляющая форматирование или фильтрацию сообщений.
  • Observer — для реализации событийной модели, например, подписка на изменения состояния объекта.

Пример использования паттерна Singleton в Go:

package config

type Config struct {
    DatabaseURL string
}

var instance *Config

func GetConfig() *Config {
    if instance == nil {
        instance = &Config{DatabaseURL: "postgres://localhost/db"}
    }
    return instance
}

Этот паттерн гарантирует, что конфигурация будет загружена и доступна в единственном экземпляре во всем приложении.