A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

A NÁLISE Q UANTITATIVA DA I MPLEMENTAÇÃO DE T RATAMENTO DE E XCEÇÕES NA L INGUAGEM P TOLEMY Aluno: Cleivson Arruda Orientador: Fernando Castor T RABALHO.

Apresentações semelhantes


Apresentação em tema: "A NÁLISE Q UANTITATIVA DA I MPLEMENTAÇÃO DE T RATAMENTO DE E XCEÇÕES NA L INGUAGEM P TOLEMY Aluno: Cleivson Arruda Orientador: Fernando Castor T RABALHO."— Transcrição da apresentação:

1 A NÁLISE Q UANTITATIVA DA I MPLEMENTAÇÃO DE T RATAMENTO DE E XCEÇÕES NA L INGUAGEM P TOLEMY Aluno: Cleivson Arruda Orientador: Fernando Castor T RABALHO DE G RADUAÇÃO

2 R OTEIRO Introdução Fundamentação Conjunto de métricas Ferramenta Estudo Conclusão

3 I NTRODUÇÃO Paradigma de orientação a objetos é limitado A modularização de alguns interesses é priorizada frente a de outros Modularização é importante para aumentar o reuso, robustez e consistência do código [2] Alguns interesses acabam sendo penalizados em modelagens OO Interesses espalhados ao longo da aplicação são chamados interesses transversais [2] Logging, concorrência, tratamento de exceções

4 I NTRODUÇÃO AOSD como alternativa para modularização de interesses transversais [19] Permite pontos de interação entre interesses Permite encapsular comportamentos transversais através de aspectos Tratamento de exceções é um interesse geralmente implícito em aplicações Comum replicação de código para tratamento de exceções recorrentes

5 T RATAMENTO DE E XCEÇÕES Exceções definem comportamentos incorretos ou que violam as regras da própria linguagem Java permite que exceções sejam identificadas e tratadas [17] Exceções podem ser implícitas ou explícitas Explícitas através do comando throw

6 T RATAMENTO DE E XCEÇÕES Exceções explícitas para validar comportamentos [17] Facilita entendimento Aumenta a confiabilidade

7 T RATAMENTO DE E XCEÇÕES Toda exceção herda de Throwable Exception são falhas recuperáveis Error são falhas irrecuperáveis RuntimeException são todos as falhas detectadas durante execução Checked exception classes são exceções checadas pelo compilador

8 T RATAMENTO DE E XCEÇÕES Exceções são tratadas pela construção try-catch- finally O bloco try define a região protegida Pode ter uma ou mais cláusulas catch associadas Pode ter uma cláusula finally associada Cláusulas catch são associadas a uma exceção e responsáveis pelo seu tratamento Cláusulas finally definem comportamentos que devem sempre ser executados

9 T RATAMENTO DE E XCEÇÕES

10 Variáveis definidas em escopos externos à construção try-catch-finally são acessíveis internamente Variáveis dentro de cada bloco não são acessíveis aos outros blocos Todo método deve declarar sua interface de exceções

11 A SPECTOS Servem para separar interesses dentro da aplicação [19] Linguagens podem ser simétricas ou assimétricas Permitem interação entre interesses Eventos implícitos Eventos explícitos

12 A SPECTOS Linguagens de eventos implícitos [22] Maior clareza no código principal Abstração de interesses transversais Oclusão de comportamentos Ex.: AspectJ Linguagens de eventos explícitos Acrescentam construções ao código principal Exigem conhecimento mínimo dos aspectos Maior facilidade no entendimento do comportamento Ex.: Ptolemy

13 P TOLEMY Extensão de Java para orientação a aspectos [21] Eventos Explícitos Tipificados Quantificados Simétrica

14 P TOLEMY Eventos são a interface de comunicação entre interesses Anunciante do evento Tratador do evento Declaração de evento possui: Nome do evento Variáveis de contexto Tipo de retorno Contrato translúcido* [22]

15 P TOLEMY

16 Anúncios de eventos pela expressão announce Passagem de parâmetros Podem definir closures Permitem alteração do código da closure

17 P TOLEMY Closure se comporta como um bloco normal Variáveis definidas externamente são acessíveis dentro da closure, mas o contrário não é verdadeiro

18 P TOLEMY Classes devem implementar interesses transversais definindo tratadores Registradas pelo comando register Definição de tratadores pela cláusula when Associa todas as instâncias de um evento a um método tratador Tratadores Recebem uma instância do evento por parâmetro Têm o mesmo tipo de retorno do evento tratado Declaram Throwable na interface de exceções

19 P TOLEMY

20 Tratadores podem ser encadeados Ordem definida em tempo de execução Definição de fluxo de controle pela expressão invoke() Chamadas a invoke() podem lançar qualquer exceção

21 P TOLEMY IMPLEMENTAÇÃO


Carregar ppt "A NÁLISE Q UANTITATIVA DA I MPLEMENTAÇÃO DE T RATAMENTO DE E XCEÇÕES NA L INGUAGEM P TOLEMY Aluno: Cleivson Arruda Orientador: Fernando Castor T RABALHO."

Apresentações semelhantes


Anúncios Google