Executando verificação de segurança...
Respondendo a "Olhando os comentários, vejo que tem falta de i..." dentro da publicação [Não disponível]
1

Usar um switch case viola o princípio Open/Closed dos princípios SOLID (pesquisa isso no google).

Sua observação faz sentido. Se nao resolve problema real, pra que aprender???

Um exemplo real:
Você está fazendo uma aplicação e usuário pode escolher salvar os dados em banco de dados ou salvar em arquivo no computador dele. O jeito certo de fazer é (em OOP): Criar uma interface que define como você vai salvar os dados; criar 2 implementações dela, uma para o banco de dados e outra para os arquivos; criar uma factory que instância a classe concreta de acordo com a escolhe do usuário.

O jeito errado de fazer: Usar um switch case =|.

Ou outra: se você usar um switch case pra selectionar a classe correta pra interface... bom, isso é a factory meu amigo haha.

Pronto, tá aí o seu exemplo prático!
Boa sorte nos estudos de design patterns!

Carregando publicação patrocinada...