Publicado em

Mais sobre as Exceções em C#

Partilhar:

Introdução

As exceções em C# são mecanismos que permitem que um programa responda a situações excepcionais, como erros de runtime. Através das exceções, é possível criar softwares mais resilientes e informativos.

O que são Exceções Personalizadas?

Para além das exceções padrão fornecidas pelo .NET, os desenvolvedores têm a liberdade de criar suas próprias exceções. Estas são particularmente úteis para representar problemas específicos do domínio da aplicação.

Como Utilizar o throw

O comando throw sinaliza uma exceção. Quando invocado, a execução do método corrente é interrompida e a busca por um bloco catch adequado começa.

using System;

namespace Base {
  class MaisSobreAsExcecoes {
    private Exception stringVazia = new Exception("Não se pode verificar uma string que esteja vazia.");

    public void Run() {
      try {
        VerificarString("Nelson Silva");
      }
      catch (Exception excecao) {
        Console.WriteLine(excecao);
      }
    }

    private void VerificarString(string _string) {
      if (_string == string.Empty)
        throw stringVazia;
    }
  }
}

Boas Práticas ao Trabalhar com Exceções

  • Não abuse das exceções: Utilize-as apenas para situações verdadeiramente excepcionais, e não como parte da lógica normal do programa.
  • Forneça informações claras: Quando criar exceções personalizadas, inclua mensagens claras e, se possível, sugestões sobre como o problema pode ser resolvido.
  • Evite apanhar exceções genéricas: Sempre que possível, trate apenas das exceções específicas que você espera que ocorram.

Tratamento Avançado de Exceções

Por vezes, pode ser útil não apenas capturar uma exceção, mas também adicionar informações adicionais ou até mesmo alterar o tipo da exceção antes de a relançar. O C# fornece o throw; (sem qualquer exceção após) para relançar a exceção atual.

A Importância do Registro (Logging) de Exceções

O registro de exceções é vital. Em ambientes de produção, quando uma exceção ocorre, é essencial ter um sistema de registro que capte todos os detalhes. Isto facilitará muito a tarefa de diagnosticar e corrigir problemas.

Conclusão

O tratamento adequado das exceções é fundamental para criar programas robustos em C#. Através de um entendimento profundo e da utilização consciente das exceções, os programadores podem assegurar que os seus softwares não apenas falham graciosamente, mas também fornecem informações valiosas quando as coisas não correm conforme esperado.

Happy coding!