Skip to content
IRC-CodingIRC-Coding
SingletonObserverFactoryAdapterFassadeProxy

Design Patterns: Singleton, Observer, Factory, Adapter

Aprende los patrones clave: Singleton, Observer, Factory, Adapter, Fassade y Proxy con ejemplos en Java y casos de uso.

S

schutzgeist

1 min read
Design Patterns: Singleton, Observer, Factory, Adapter

Singleton, Observer, Factory, Adapter, Fassade, Proxy

Este artículo ofrece una explicación conceptual de seis patrones frecuentes, con preguntas de examen, ejemplos y etiquetas incluidas.

In a Nutshell

Los Design Patterns proporcionan soluciones probadas para problemas recurrentes de estructura y comunicación.

Descripción técnica compacta

  • Singleton: exactamente una instancia (p. ej., configuración/logger)
  • Observer: Publish/Subscribe para eventos (p. ej., UI)
  • Factory: encapsula la creación de objetos
  • Adapter: traduce interfaces incompatibles
  • Fassade: unifica un subsistema detrás de una API simple
  • Proxy: delegado para control de acceso, caché, logging y lazy loading

Puntos clave para examen

  • Singleton: una instancia, acceso global
  • Observer: desacoplamiento de eventos
  • Factory: creación flexible de objetos (relevante para IHK)
  • Adapter: integración y compatibilidad
  • Fassade: API simplificada
  • Proxy: control de acceso y caché (seguridad)
  • Documentar y justificar los patterns

Componentes principales

  1. Constructor de Singleton
  2. Interfaz Observer
  3. Factory create()
  4. Mapeo de Adapter
  5. API de Fassade
  6. Control de acceso de Proxy

Ejemplo práctico (Singleton en Java)

public class ConfigManager {
  private static ConfigManager instance;
  private ConfigManager() {}
  public static ConfigManager getInstance() {
    if (instance == null) {
      instance = new ConfigManager();
    }
    return instance;
  }
}

Ventajas e inconvenientes

Ventajas

  • Soluciones reutilizables
  • Estructuras probadas
  • Mejor comunicación en el equipo

Inconvenientes

  • Mal uso genera complejidad
  • Singleton puede dificultar los tests
  • Observer puede crear cascadas de cambios

Preguntas típicas de examen (con respuesta breve)

  1. ¿Objetivo del Singleton? Exactamente una instancia.
  2. ¿Cuándo usar Observer? Cuando múltiples receptores deben reaccionar a cambios.
  3. ¿Por qué Factory en lugar de new en todas partes? Centralizar y desacoplar la lógica de creación.

Información complementaria

  1. https://refactoring.guru/design-patterns
  2. https://github.com/iluwatar/java-design-patterns
Volver al blog
Share:

Nächster Artikel in Arquitectura de Software

Weiterlesen
Design Patterns: Singleton, Observer, Factory y más

Entradas relacionadas