Skip to content

Instantly share code, notes, and snippets.

@rafael-neri
Last active June 20, 2016 18:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rafael-neri/9464b3df78b0370d224bd8f0cf3a3d6f to your computer and use it in GitHub Desktop.
Save rafael-neri/9464b3df78b0370d224bd8f0cf3a3d6f to your computer and use it in GitHub Desktop.
padrão fenix

Depois do manifesto dos Programadores Que Se Garantem chegou por aqui um novo Padrão de Projeto.

Note que um padrão de projeto é uma arte. Não são todas as pessoas que sabem usá-los, muito menos entendê-los. Esse padrão é especial, "Padrão Fênix", "Exceção Fenix" ou em inglês e mais chic: Phoenix Exception!

A Phoenix Exception consiste em um sistema que nunca morre, pois assim como a Phoenix, ele sempre renasce das cinzas.

Veja um exemplo da Phoenix Exception.

void inserir() {
try {
//realiza alguma ação.
}
catch (Throwable e) {
//Aqui a Phoenix renasce…
Thread.sleep(1000); //Espera um pouco e aproveita para usar o padrão: ‘Pensamento Positivo’.
inserir();
}
}

Com a Phoenix Exception implementada, seu sistema estará completamente imune de falhas já que que sempre que acontecer alguma M****, feita por algum POGramador, ele renascerá das cinzas e tentará executar o que falhou no primeiro ciclo de vida.

A Phoenix Exception chegou até mim por email. E me fez ficar impressionada! Como eu não pensei nisso antes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment