Olá Marcos, tudo certo?
Conforme o sistema cresce, também cresce a chance de algo dar errado e surgir os bugs.
O uso do try..catch
é a chance de corrigir esses problemas e não "quebrar" a aplicação quando alguém usar.
Um uso bem simples do dia a dia é com o uso de banco de dados. E se não existe nenhum dado na tabela do seu banco de dados? E se não retornar nenhum valor, como era esperado? E se seu sistema não conseguir conectar ao banco de dados porque o servidor de dados travou?
Essa é uma medida preventiva com problemas possíveis que podem (e vão) acontecer. Ao invés de entregar o erro para o usuário, você faz algum processamento a partir deste erro e entrega algo para o usuário que não seja um SqlException
, que isso não quer dizer absolutamente nada para o usuário final. É muito melhor entregar uma mensagem de instrução para o usuário, gravar um log com todos os erros e enviar uma mensagem para os responsáveis do servidor de dados, reportando que eles tem um problema para cuidar.
Espero ter ajudado!