Singleton x monostate

Tava lendo uma discução em outro forum sobre qual pattern é melhor, já que ambos são solução para um problema parecido.

Pessoalmente nunca usei monostate por estar acostumado com singleton, porém monostate me parece ser bem util, além de acabar com o erro de usar singleton simplesmente como uma forma de lookup.

Oque vcs acham?

Me pareceu meio inutil… eh a mesma cosia que voce colocar um (change|set)Instance no Singleton…

Rafael

[quote=“Rafael Steil”]Me pareceu meio inutil… eh a mesma cosia que voce colocar um (change|set)Instance no Singleton…
Rafael[/quote]

Desculpa, mas acho que vc entendeu errado o pattern, da uma olhada em http://www.prabhums.org/knowledgebase/index.html?page=pages/Java%20Technology/Patterns/design_pattern_monostate.htm.
[/u]

Eu li, e foi do exemplo do cara que considerei inutil. Nao tem sentido isso ser um “pattern”.

Qual a vantagem que vc ganha? “transparente para o usuario”… nego sai usando e depois pira a cabeca pq nao sabe o motivo dos valores serem alterados para todas as intancias ( ja que o cara diz que os usuarios nao precisam saber que o objeto eh monostate )…

Rafael

A ideia é compartilhar só os dados, não o comportamento.

Ai tudo bem… eh que a comparacao com Singleton eh estranha…

Mas a implementacao deveria explicitamente dizer que o objeto eh monostate.

Rafael
( se bem que com singleton vc acaba tendo o mesmo compartilhamento de dados… uma vantagem do monostate poderia ser o compartilhamento de certos dados, ao inves de tudo, como no singleton )