Bellman-Ford

¿Qué es el Patrón Template Method?

El Template Method es un patrón de diseño de comportamiento que define el esqueleto de un algoritmo en una clase base y permite que las subclases redefinan partes específicas del algoritmo sin cambiar su estructura general.

Código de Ejemplo en JavaScript

        
class DataProcessor {
  process() {
    this.loadData();
    this.transformData();
    this.displayData();
  }

  loadData() {
    throw new Error("Método loadData() debe ser implementado");
  }

  transformData() {
    throw new Error("Método transformData() debe ser implementado");
  }

  displayData() {
    console.log("Mostrando datos...");
  }
}

class JSONProcessor extends DataProcessor {
  loadData() {
    console.log("Cargando datos JSON...");
  }

  transformData() {
    console.log("Transformando datos JSON...");
  }
}

class CSVProcessor extends DataProcessor {
  loadData() {
    console.log("Cargando datos CSV...");
  }

  transformData() {
    console.log("Transformando datos CSV...");
  }
}

// Uso del Patrón Template Method
const jsonProcessor = new JSONProcessor();
jsonProcessor.process();

const csvProcessor = new CSVProcessor();
csvProcessor.process();

        

Casos de Uso

  • Definir flujos de trabajo estándar con pasos específicos que pueden variar.
  • Procesamiento de datos en múltiples formatos, como JSON, XML, o CSV.
  • Implementar algoritmos con estructuras fijas pero con personalización en ciertos pasos.

Patrones Relacionados

  • Strategy: Ofrece alternativas para un comportamiento completo, mientras que Template Method permite redefinir partes del algoritmo.
  • Factory Method: Encapsula la creación de objetos dentro de métodos específicos.
  • State: Cambia el comportamiento de un objeto en función de su estado.
Whatsapp Mentores Tech