Devo registrar alguns eventos em um programa, mas, tanto quanto sei, seria melhor manter o código de log fora do programa, porque não se trata da funcionalidade real do programa. Então, você pode me dizer se devo mantê-lo completamente fora de código e usar apenas Observadores e Ouvintes para registrar os eventos? Ou posso adicionar uma linha de código como a seguinte sempre que precisar registrar algo:
MyGloriousLogger.getXXXLogger().Log(LogPlace, new LogObject(z1, z2, z3, z4, ..., z99));
Cometo um erro ao usar o padrão de design do Observer? Preciso de outro padrão de design? Ou devo parar de pensar em padrões de design?
PS1. Se eu quiser registrar usando apenas ouvintes e observadores, certamente precisarei adicionar e melhorar os observadores e ouvintes do programa.
PS2. Eu certamente sei que existem bibliotecas diferentes para efetuar login em Java e estou usando java.utils.logging, mas preciso ter um wrapper para registrar meus objetos especiais.