none
Restrição em utilizar Try Catch RRS feed

  • Pergunta

  • Pessoal

    Por favor ...

    Alguém sabe dizer se utilizar o try catch tem alguma restrição tipo o aumento do consumo de memória....

    Hoje tem um modo de implementação que se ocorrer algum erro preenche um Objeto Resultado.... este objeto Resultado é uma classe que customizamos para tratamento de erro por exemplo erro de validação na tela.... porem tenho a desvantagem com este modo preciso passar este objeto Resultado em todas camadas

    CAMADA APRESENTACAO -> MODEL -> CAMADA DATA (BD)


    Estava pensando em modificar este modo disparando Exception por exemplo:  se ocorrer algum erro na Camada BD  ai no caso a Camada de

    Apresentação mostraria este exception para o usuário 

    Alguém pode ajudar com uma conclusão  (se ok ou não modificar esta estrutura)  pois já ouvi profissionais falando mal no caso aumentaria o consumo de memória.. enfim

    por outro lado já vi que esta forma de implementação é muito utilizada em POO.

    Desde já sou muito Grato

    Jairo

    quarta-feira, 30 de janeiro de 2013 15:09

Todas as Respostas

  • Fala Jairo

    A historia é o seguinte.

    Realmente a utilização de Try catch consome mais memória que a utilização de uma classe de retorno.

    Porém....

    Esse "aumento" de consumo de memória é muito baixo, talvez isto só teria importância se você estivesse fazendo um sistema de alta performance e processamento (ex: calculo financeiro de milhares de pessoas). Esta história poderia até ser válida quando iniciamos com o .net (meados de 2002/2003). Mas.. já se passaram 10 anos..rs

    Além disso existem muitas vantagens de se utilizar try catch. Segue abaixo algumas:

    - Os seus métodos terão a assinatura que devem ter, e não modificada por causa do tratamento de erro.

    - Você poderá criar logs muito mais personalizados em cada camada. E para cada camada um tratamento específico.

    - Por exemplo, se a sua camada de dados disparar um exception(personalizada) você poderia dizer para web enviar uma resposta padrão do tipo "Contate o Adminstrador". No caso de sua camada de dados disparar uma exceção(personalizada), você poderia dizer para web enviar um popUp indicando as regras de negócio que não foram atendidas..

    Eu escrevi um artigo que pode te ajudar a validar essas informações que passei sobre performance.

    http://franciscogoncalves.com/2011/08/02/performance-explorer-vs2010-instrumentation/

    Ajudou?


    Francisco Gonçalves
    Blog: franciscogoncalves.wordpress.com

    quinta-feira, 31 de janeiro de 2013 20:21
  • Ola Francisco muito obrigado

    Foi bastante esclarecedor!!!

    Ajudou paca!!!

    Um grande Abraço...!!!

    segunda-feira, 18 de fevereiro de 2013 11:56