La "diferencia" entre ellas est� clara: las clases est�ticas _no_ tienen
instancia y los singletons s�. A nivel funcional vienen a realizar lo
mismo. Peeeeeeeero...

Las clases est�ticas no respetan las peculiaridades b�sicas de OOP
(polimorfismo, herencia, override) y los miembros est�ticos pierden
funcionalidad --mucha-- frente a una clase con Singleton. Una clase
est�tica no puede implementar una interfaz, por ejemplo.

Por otro lado, una clase con un Singleton puede modificarse f�cilmente
en caso de necesitar m�s de una instancia (Factory Method/Strategy
Pattern) y convertirse en "Multiton" con poco esfuerzo. Adem�s, es
�ptima en cuanto a memoria/funcionalidad siempre y cuando se use lazy
instanciation.

Personalmente prefiero el uso de Singleton para la mayor�a de los casos
pero la utilizaci�n de est�ticas no la tengo vetada, s�lo restringida a
colecciones de funciones.

M.



-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
En nombre de Joseba Alonso
Enviado el: martes, 10 de febrero de 2004 14:38
Para: Lista ASNativos
Asunto: [ASNativos] Singleton vs Static class


El otro dia, en una de mis multiples diarreas mentales me encontre con
una de esas preguntas raras que se hace a uno mismo. �Que diferencia
tienen en cuanto a utilidad una clase estatica contra un singleton?

Me refiero a que en AS las clases estaticas son objetos unicos no
instanciables, por tanto hay solo una instancia de ellos. Por otra parte
el singleton es una clase de la que solo se puede conseguir una
instancia. Me preguntaba si no tienen una funcionalidad casi identica.
La unica diferencia que veo entre ellas es que el singleton se instancia
on-demand y el clase estatica se intancia nada mas comenzar la
ejecucion. Pero a parte de eso viene a proporcionar la misma
funcionalidad no?

hay alguien que me ilumine?


Joseba Alonso
www.sidedev.net
www.5dms.com

<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones http://www.sidedev.net/asnativos
-------------------------------->

<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones
http://www.sidedev.net/asnativos
-------------------------------->

Responder a