Синглтон — это шаблон проектирования, который позволяет создавать экземпляр класса только один раз. Преимущество Singleton заключается в том, что каждый раз вызывается только один и тот же экземпляр объекта. Ruby также поддерживает шаблон Singleton.
Чтобы создать одноэлементный класс в Ruby, необходимо включить модуль Singleton
.
Проверьте код ниже:
В приведенном выше примере создан рубиновый одноэлементный класс с именем ServerConnection
с методом экземпляра с именем connection
.
Чтобы создать экземпляр объекта с одноэлементным классом в Ruby, нам нужно использовать метод .instance
.
server = ServerConnection.instance
Независимо от того, сколько раз ServerConnection.instance
вызывается, возвращаемый объект будет одним и тем же.