Uma equipe de desenvolvimento identificou que o código de um
módulo de autenticação está sendo duplicado em vários pontos do
sistema, dificultando a manutenção. A equipe decide refatorar o
código aplicando um padrão que centralize a criação de objetos de
autenticação, permitindo que subclasses decidam qual tipo
específico de autenticador instanciar (OAuth, LDAP, ou local).
O padrão de projeto que atende a essa necessidade é chamado
O padrão de projeto que atende a essa necessidade é chamado