Classe :: Strongsingleton.Classe :: strongsingleton é uma classe base singleton mais forte e mais segura. | |
Baixe Agora |
Classe :: Strongsingleton. Classificação e resumo
Propaganda
- Licença:
- Perl Artistic License
- Preço:
- FREE
- Nome do editor:
- Stevan Little
- Site do editor:
- http://search.cpan.org/~stevan/
Classe :: Strongsingleton. Tag
Classe :: Strongsingleton. Descrição
Classe :: StrongSingleton é uma classe base singleton mais forte e mais segura. Classe :: Strongsingleton é uma classe de singleton mais forte e mais segura Classe.Synopsis Pacote My :: Singleton :: Class; Use base QW (Classe :: StrongSingleton); Sub new {my ($ classe,% my_params) = @_; # Crie nossa instância de objeto Minha instância = {% my_params}; abençoe ($ instance, $ classe); # e inicialize-o como um singleton $ instance -> _ init_strongsingleton (); Voltar $ Instância; } 1; # mais tarde no seu código ... # Crie a primeira instância da nossa classe My $ instance = My :: Singleton :: Class-> Novo (param => "valor"); # Tente criar um 'novo' um novamente, e # você acaba com a mesma instância, não # um novo my $ instance2 = My :: Singleton :: Class-> Novo (param => "outro valor"); # Chamada 'Instância' retorna o Singleton # instance esperava que meu $ instance3 = My :: Singleton :: Class-> Instância (); # Embora raramente necessário, se você tiver que # você pode destruir o singleton # ou através da instância $ instance-> destruir (); # ou através da classe My :: Singleton :: Class-> Destrua (); # Claro, isso é assumindo que você não substitui o destino. Também chamando 'instância' antes de chamar 'New' # retornará uma nova instância do Singleton Minha instância = My :: Singleton :: Class-> Instância (); Este módulo é uma alternativa à classe :: Singleton e Classe :: Frosselingleton, e fornece uma classe Singleton mais segura, na medida em que é preciso medidas para evitar a possibilidade de criação acidental de múltiplas instâncias e / ou a sobrescrição de existência de instâncias singleton. Para uma comparação detalhada, consulte a seção "Ver também". Aqui é uma descrição de como tudo funciona. Primeiro, o usuário cria a primeira instância do Singleton da classe da maneira normal. Meu $ OBJ = My :: Singleton :: Class-> Novo ("variável", "parâmetro"); Esta instância é então armazenada dentro de uma variável de escopo lexicalmente dentro do pacote de classe :: StrongSingleton. Isso impede que a variável seja acessada por qualquer coisa, além de métodos da classe :: StrongSingleton Package. Neste ponto também, o novo método para a classe é substituído para que ele sempre retorne a instância do Singleton. Isso impede qualquer sobrescrição acidental da instância do Singleton. Isso significa que qualquer uma das seguintes linhas de código produz a mesma instância: Minha instância = $ obj-> instância (); Meu $ Instância = My :: Singleton :: Class-> Instância (); minha instância = $ Obj-> Novo (); Minha instância = Meu :: Singleton :: Class-> Novo (); Pessoalmente, vejo esta uma melhora sobre a gangue habitual de quatro singletons de estilo que desencoraja inteiramente o uso do novo método. Através deste método, um usuário pode ser capaz de usar a classe Singleton de uma maneira normal, não ter que saber que é realmente um singleton. Isso pode ser útil se o seu design mudar e você não precisar mais da classe como um singleton. Requisitos: · Perl.
Classe :: Strongsingleton. Software Relacionado
Iterador de Lista
Array :: iterator é uma classe simples para iterating sobre matrizes perl. ...
175
Relações :: Família
Relações :: Família é um módulo de mecanismo de consulta Relacional DBI / DBD :: MySQL. ...
189
Pacote :: papagaio.
Bundle :: Papagaio é um pacote de módulos necessários para desenvolver e testar o papagaio. ...
168