Boa noite,
Estou desenvolvendo uma aplicação DESKTOP que basicamente possui 3 camadas (GUI, Negocio e Repositorio). Minha duvida não é referente a isso e sim sobre o seguinte, qual a melhor pratica para tratar exceções quandos se trabalha dessa forma ? Por exemplo, nas minhas classes que se encontram na camada de repositorio eu posso lançar SQLExcpetion, eu devo tratar essa exceção na propria classe do repositorio ou ir lançando essa exceção até a minha camada de GUI e tratar todas as exceções na GUI (Eu digo na camada de GUI pq todas as rotinas do meu programa são iniciadas na GUI onde o usuário está interagindo com a aplicação) ? Qual forma é mais indicada ?
Obrigado
Ola,
Trabalho no modelo MVC (modelo visão controle), e trato todas as exceções na camada de controle, a gui fica apenas com o trabalho de mostrar tal retorno. Sendo assim, se algum dia você quiser transformar sua aplicação em web não precisara fazer alterações muito profundas, mas apenas adequar sua GUI as respostas da sua aplicação.
Espero ter ajudado!
Abraço.
Obrigado raptor.x,
Vou centralizar então o local onde tratar minhas exceções para ficar algo mais limpo.
Caso alguem tenha mais dicas ficaria grato.
Resumidamente, vc deve isolar cada camada logica/fisica da sua aplicação usando uma exception base ou uma hierarquia de exception.
Atualmente como indicado no (Effective-Java) temo usando somente runtime exceptions, deixando o codigo mais limpo.
Existe boas praticas para exception: