Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Vantagem/Desvantagem não exibir erro.

Me soa estranho e desconfortável desabilitar a exibição de alertas/erros, pois, apesar de alguns momentos ser algo tido como redundância, há casos que são realmente erros que deveriam ser concertados. Neste caso, acho mais adequado encontrar outras soluções, logo, criei uma verificação:

if( session_id() == '' ){
    session_start();
}

Vai verificar se existe uma sessão criada, caso não haja, inciará uma. Há alguma desvantagem nessa abordagem?

5 respostas
solução!

É uma péssima prática você omitir erros. Em produção devem estar desativados por questões de segurança, mas em ambiente de desenvolvimento, sempre habilito todos os erros, pois se existem algum sendo exibido, o caminho óbvio é corrigí-lo, e não mascará-lo.

Não levando em conta questões de segurança, não há desvantagens em verificar a existência de uma sessão antes de abrí-la.

Sua solução é sem dúvidas melhor do que esconder os erros.

Então quando o projeto estiver concluído é recomendável desativar todos os erros por questões de segurança, e reativa-los apenas quando algum erro for encontrado (para localiza-lo e soluciona-lo)?

Olá George,

Minha opinião seria criar mecanismos onde você consiga interceptar esses possíveis erros, que não deveriam acontecer em produção, sempre pensando em como o sistema deve se recuperar para o usuário de maneira amigável, e utilizar ferramentas para criar logs do seu sistema para que você possa rastrear e verificar posteriormente algum problema ocorrido.

E seguindo o conselho de muitos hoje em dia, que é testar o seu código criando testes automatizados, que oferecem benefícios importantes.

Acredito que você está pensando de maneira correta em se realizar verificações desse tipo, pois evita problemas inesperados que possam ocorrer quando um trecho do seu código necessitar de utilizar variáveis e dados que já deveriam estar inicializados.

Sim, George. Após pronto, é recomendável desativar a exibição dos erros, mas somente em ambiente de produção. Ou seja, quando seu site ou sistema estiver no ar. Em ambiente de desenvolvimento, na sua máquina ou em um servidor de testes, o ideal é continuar com as mensagens de erro habilitadas.

E como o Rafael falou, é sempre interessante salvar logs de todos os erros (e avisos, warnings), além de exibir uma mensagem amigável ao usuário, para que você consiga acompanhar o que está acontecendo com seu sistema.

Espero ter ajudado!

Obrigado Carlos e Rafael pelo auxílio :)