Padrões de projeto em Python

Template Method Pattern in Python

Aprenda Template Method Pattern in Python com um exemplo prático que pode editar e executar online.

O que é Template Method Pattern?

Aprenda Template Method Pattern in Python com um exemplo prático que pode editar e executar online.

Quando usar?

  • Resolver problemas recorrentes de design de objetos com estruturas comprovadas.
  • Desacoplar responsabilidades para facilitar a extensão e os testes do código.
  • Usar um vocabulário de design comum ao discutir arquitetura com a equipe.

Código de exemplo

Executar código →
main.py
from abc import ABC, abstractmethod


class DataPipeline(ABC):
    # Template Method: fix the workflow and customize selected steps.
    def run(self):
        # Keep the algorithm order stable.
        return ["read", self.process(), "save"]

    @abstractmethod
    def process(self): pass


class CsvPipeline(DataPipeline):
    def process(self): return "process CSV"


print(" -> ".join(CsvPipeline().run()))

Saída esperada

read -> process CSV -> save

Como funciona

Este exemplo demonstra Template Method Pattern in Python. Altere os valores de entrada para explorar o código.

Altere os valores e execute o programa no compilador Python online CodeUtility sem instalar Python.

Exercícios práticos

Altere as entradas e teste casos de borda antes de usar conjuntos de dados maiores.

  1. Substitua o domínio do exemplo preservando a estrutura do padrão.
  2. Compare o padrão com uma implementação mais simples e explique as diferenças.
  3. Escreva testes para cada participante antes de adicionar outra implementação.
Executar no IDE Python →