140 likes | 274 Views
Middleware Orientado a Aspectos - MOA. Tópicos Avançados em Sistemas Distribuídos – if749. Roteiro. AspectJ Middleware Conclusão. Programação Orientada a Aspectos - POA. Paradigma que estende Orientação a Objetos (POO) Introduz novas abstrações: conceito de interesse Vantagens:
E N D
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 espalhado • Aumenta 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ções • Send(), receive(), lookup(), registry() Rodrigo Diego
Arquitetura Básica [3]request() / [4]reply() [2]lookup() [1]registry() Cliente Servidor de Nomes Servidor Aspecto Auditoria Camada Distribuição send() receive() Camada Comunicação Rodrigo Diego
Arquiterura interna – Camada de Comunicação send() receive() interface : : IORB ORB receive send marshall() unmarshall() Marshaller Socket Rodrigo Diego
Diagrama de classe - Comunicação Rodrigo Diego
Arquiterura interna – Camada de Distribuição - Cliente op2() lookup() registry() op1() Interface::IServicoNomes Interface::IServicoCliente Proxy Nomes Proxy Cliente Aspecto Auditoria lookup() registry() op1() op2() ORB ORB Rodrigo Diego send() send()
Arquiterura interna – Camada de Distribuição - Servidor lookup() registry() op1() op2() Invoker Nomes Invoker Aplicação Aspecto Auditoria dispatchMessage() dispatchMessage() Servico Nomes Servico Aplicação Rodrigo Diego receive() receive()
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 Rodrigo Diego