Pergunta

O padrão singleton é um padrão de design usado para restringir a instanciação de uma classe a uma instância de objeto.Embora eu saiba como codificar o padrão singleton em C++ e Java, gostaria de saber se alguém sabe como implementá-lo em Ruby.

Foi útil?

Solução

Na verdade, a resposta acima não estava totalmente correta.

require 'singleton'

class Example
  include Singleton
end

Você também precisa incluir a instrução require 'singleton'.

Outras dicas

Use o módulo singleton:

class Clazz
  include Singleton
end

Ver http://www.ruby-doc.org/stdlib/libdoc/singleton/rdoc/index.html para mais informações.

Você poderia usar módulos para o mesmo efeito, eu acredito, embora não seja "o padrão singleton", você pode ter um estado global dessa forma (que é o que é um singleton!Estado global impertinente!).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top