Skip to content

Files

Latest commit

0605a1f · Aug 13, 2015

History

History
This branch is 39 commits behind AlexanderGrom/go-patterns:master.

Singleton

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Aug 13, 2015
Aug 13, 2015
Aug 13, 2015

Одиночка (Singleton)

Паттерн Singleton относится к порождающим паттернам уровня объекта. Паттерн контролирует создание единственного экземпляра некоторого класса и предоставляет доступ к нему. Другими словами, Singleton гарантирует, что у класса будет только один экземпляр и предоставляет к нему точку доступа, через фабричный метод.

Требуется для реализации:

  1. Функция GetInstance, создающая экземпляр класса Singleton только один раз. Если до этого экземпляр уже был создан, то просто возвращает этот экземпляр.

[!] В описании паттерна применяются общие понятия, такие как Класс, Объект, Абстрактный класс. Применимо к языку Go, это Пользовательский Тип, Экземпляр этого Типа и Интерфейс. Также в языке Go за место общепринятого наследования используется агрегирование и встраивание.

-- THE END --