Как создать класс, используя шаблон проектирования Singleton в Ruby?
-
08-06-2019 - |
Вопрос
Шаблон Singleton — это шаблон проектирования, который используется для ограничения создания экземпляра класса одним экземпляром объекта.Хотя я знаю, как кодировать шаблон Singleton на C++ и Java, мне было интересно, знает ли кто-нибудь, как реализовать его в Ruby?
Решение
На самом деле приведенный выше ответ был не совсем верным.
require 'singleton'
class Example
include Singleton
end
Вам также необходимо включить оператор require 'singleton'.
Другие советы
Используйте модуль Singleton:
class Clazz
include Singleton
end
Видеть http://www.ruby-doc.org/stdlib/libdoc/singleton/rdoc/index.html для получения дополнительной информации.
Я считаю, что вы можете использовать модули для того же эффекта, хотя это не «шаблон синглтона», таким образом вы можете иметь глобальное состояние (именно это и есть синглтон!Непослушное глобальное государство!).