Middleware Orientado a Aspectos - MOA
description
Transcript of Middleware Orientado a Aspectos - MOA
Rodrigo Diego
Middleware Orientado a Aspectos - MOA
Tópicos Avançados em Sistemas Distribuídos – if749
Rodrigo Diego
Roteiro
AspectJ Middleware Conclusão
Rodrigo Diego
Programação Orientada a Aspectos - POA
Paradigma que estende Orientação a Objetos (POO)
Introduz novas abstrações: conceito de interesse
Vantagens:Maior modularidade, diminui o código
espalhadoAumenta a reusabilidade e reuso
Rodrigo Diego
AspectJ
Linguagem Orientada a Aspectos Extensão da linguagem Java
Compatibilidade: se é Java então também é AspectJ
Rodrigo Diego
Middleware
Comunicação síncrona Cliente, Servidor e Servidor de nomes Aspecto considerado
Auditoria – oferece log das operaçõesSend(), receive(), lookup(), registry()
Rodrigo Diego
Aspecto Auditoria
Arquitetura Básica
Camada Comunicação
Cliente Servidor de Nomes Servidor
[2]lookup() [1]registry()
Camada Distribuição
send() receive()
[3]request() / [4]reply()
Rodrigo Diego
Arquiterura interna – Camada de Comunicação
send() receive()
interface : : IORB
ORB
Marshaller
marshall() unmarshall()
Socket
send receive
Rodrigo Diego
Diagrama de classe - Comunicação
Rodrigo Diego
Proxy ClienteProxy Nomes
Aspecto Auditoria
Arquiterura interna – Camada de Distribuição - Cliente
send()
lookup() registry()
Interface::IServicoNomes
lookup() registry()
ORB
send()
op1() op2()
Interface::IServicoCliente
ORB
op1() op2()
Rodrigo Diego
Invoker AplicaçãoInvoker Nomes
Aspecto Auditoria
dispatchMessage()
Arquiterura interna – Camada de Distribuição - Servidor
receive()
Servico Nomes
lookup() registry()
receive()
dispatchMessage()
Servico Aplicação
op1() op2()
Rodrigo Diego
Diagrama de classes - Distribuição
Rodrigo Diego
Diagrama de classes – Distribuição - Servidor
Rodrigo Diego
Diagrama de classes – Distribuição - aspectos
Rodrigo Diego
Diagrama de classes – Distribuição - Cliente