Desenvolvimento em .NET




        Excepções
Objectivos
●   Conhecer conceito de tratamento de erros
    estuturado
●   Saber usar try-catch-finally
●   Distinguir ent...
O que é um erro?
●   um resultado negativo não é necessariamente
    um erro!
●   exemplo:
    –   ao fazer login indico u...
O que é um erro?
●   exemplo:
    –   uma aplicação precisa de um parâmetro que está
        num ficheiro de texto, no ent...
Tratamento de Erros Tradicional
●   executar função + verificar error_status
    –   “dificil” de implementar
    –   veri...
Tratamento de Erros Estruturado
●   Try – Catch – Finally
    –   try – tenta executar este código
    –   catch – se ocor...
Verificação de erros e Tratamento
              de Excepções
●   o facto de conseguirmos tratar um erro não
    quer dizer...
Exercicio
●   Criar novo projecto
    chamado
    0010_Excepcoes
Bubble Exception
●   Não confundir com o Bubble Bobble!
Bubble Exception
●   bubble => numa hierarquia de objectos refere-
    se à passagem de uma classe para a sua base
    cla...
Excepções mais comuns
●   ArgumentException – argumento de um
    procedimento inválido
●   ArgumentNullException – argume...
Custom Exceptions
●   Exception é um objecto
    –   então podemos herdar dele e criar uma
        implementação mais desc...
Objectivos
●   Conhecer conceito de tratamento de erros
    estuturado
●   Saber usar try-catch-finally
●   Distinguir ent...
Próximos SlideShares
Carregando em…5
×

Desenvolvimento em .Net - Excepções

860 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
860
No SlideShare
0
A partir de incorporações
0
Número de incorporações
70
Ações
Compartilhamentos
0
Downloads
9
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Desenvolvimento em .Net - Excepções

  1. 1. Desenvolvimento em .NET Excepções
  2. 2. Objectivos ● Conhecer conceito de tratamento de erros estuturado ● Saber usar try-catch-finally ● Distinguir entre verificação de erros e tratamento de excepções ● Bubble exception ● Excepções mais comuns ● Criar custom exceptions
  3. 3. O que é um erro? ● um resultado negativo não é necessariamente um erro! ● exemplo: – ao fazer login indico um nome de utilizador que não existe. ● não é um erro porque é um resultado expectável e a aplicação sabe o que pode fazer a seguir: login inexistente.
  4. 4. O que é um erro? ● exemplo: – uma aplicação precisa de um parâmetro que está num ficheiro de texto, no entanto esse ficheiro foi apagado. ● é um erro porque não há nenhum caminho alternativo para o código continuar a correr.
  5. 5. Tratamento de Erros Tradicional ● executar função + verificar error_status – “dificil” de implementar – verificamos o error_status depois de cada funçao... linha sim linha não? verificamos só depois daquelas funções que normalmente dão erros? ● on error goto TratamentoErro: – pouco flexivel – dentro do TratamentoErro temos que ter mais um case com todas os erros possiveis e imaginarios...
  6. 6. Tratamento de Erros Estruturado ● Try – Catch – Finally – try – tenta executar este código – catch – se ocorrer um erro do tipo xpto então faz isto – finally – de qualquer forma faz sempre isto.
  7. 7. Verificação de erros e Tratamento de Excepções ● o facto de conseguirmos tratar um erro não quer dizer que abdiquemos de o tentar evitar – exemplo: se sei que vou precisar de abrir um ficheiro faz sentido que verifique primeiro se ele existe.
  8. 8. Exercicio ● Criar novo projecto chamado 0010_Excepcoes
  9. 9. Bubble Exception ● Não confundir com o Bubble Bobble!
  10. 10. Bubble Exception ● bubble => numa hierarquia de objectos refere- se à passagem de uma classe para a sua base classe ● bubble exception => se uma excepção não for tratada onde ocorrer passa para o primeiro try- catch que encontrar na call stack
  11. 11. Excepções mais comuns ● ArgumentException – argumento de um procedimento inválido ● ArgumentNullException – argumento de um procedimento inválido porque é igual a null ● ArgumentOutOfRangeException – argumento de um procedimento inválido porque está fora dos limites definidos para esse parametro
  12. 12. Custom Exceptions ● Exception é um objecto – então podemos herdar dele e criar uma implementação mais descritiva. ● Boa prática – criar custom exceptions
  13. 13. Objectivos ● Conhecer conceito de tratamento de erros estuturado ● Saber usar try-catch-finally ● Distinguir entre verificação de erros e tratamento de excepções ● Bubble exception ● Excepções mais comuns ● Criar custom exceptions

×