- Secreton (patrón de diseño)
-
Secreton (patrón de diseño)
El patrón de diseño secreton (secreto) está diseñado para tener el comportamiento del patron Singleton pero quitando también la posibilidad de que la clase sea instanciada o heredada.
Su intención consiste en prohibir que la clase sea accedida por nadie, por lo que se utiliza frecuentemente como repositorio interno en jerarquías de clases complejas. Por ejemplo, se puede utilizar para enlazar frameworks de lenguajes mixtos, como aplicaciones web.
Ejemplos de este patrón los podemos encontrar en sistemas operativos Microsoft.
Ejemplo de implementación
Una implementación en lenguaje de programación Java sugerida por Patricio Fagalde:
private class Secreton { // El constructor privado no permite que se genere un constructor por defecto private Secreton() { /** Aca va el código oculto **/ } }
Patrones relacionados
- Abstract Factory: Muchas veces son implementados mediante Singleton, ya que normalmente deben ser accesibles públicamente y debe haber una única instancia que controle la creación de objetos, pero también pueden ser implementados por Secreton sin perder sus cualidades reproductivas.
- Monostate: Es similar a secreton, pero en lugar de controlar el instanciado de una clase, asegura que todas las instancias tengan un estado común, haciendo que todos sus miembros sean de clase.
Enlaces externos
¿Como un constructor puede ser privado? (En ingles)
Categoría: Patrones de diseño
Wikimedia foundation. 2010.