SlideShare une entreprise Scribd logo
1  sur  12
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Proxy
Carlos Alexandre Correia
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
O padrão de projeto Proxy também conhecido como Surrogate e está
enquadrado na família comportamental e seu foco e trabalhar como um
facilitador a comunicação entre as entidades envolvidas no projeto de software.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Provê um objeto intermediário que permite controlar
o acesso ao objeto original.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Redução de custo com em processos que envolvam
uma grande carga.
Um exemplo simples é a ação de carregar um grupo
de imagens.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Proxy é aplicado quando há necessidade de um
método de referencia mais versátil e sofisticado a um
objeto.
Com o controle de acesso a o objeto original.
Com o controle de numero de referencia.
Verificação se o objeto real está bloqueado antes
de ser acessado.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Proxy
Mantém uma referencia para o objeto real.
Fornece interface idêntica a de subject.
Controla o acesso ao objeto real.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Pode ser responsável pela criação ou exclusão do objeto real.
o Remote Proxy (Prover uma representação local de um
objeto que está em endereçamento diferente).
o Virtual Proxy (Criar objetos pesados sobre demanda).
o Protection Proxy (Controle de acesso ao objeto original).
o Smart Proxy (Contar a quantidade de referencias de um
objeto de forma que ele possa ser liberado quando não
houver mais nenhum).
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Subject
 Define uma interface comum para o RealSubject e Proxy.
RealSubject
Define o objeto representado pelo Proxy.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
O Proxy pode, quando apropriado, representa
solicitações para o RealSubject.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Vantagens
 Adiciona um nível de separação.
 Transparência na execução de carregamento de
objetos.
 Um Proxy Virtual pode implementar otimizações
,como criação de um objeto sob demanda.
Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis
Centro Universitário UNA
Seminário de padrões de projeto
Desvantagens
 Fatores externos como queda de rede podem
deixar o Proxy inoperante.
 Um Proxy Remoto pode ocultar o fato que um
objeto reside em um espaço de endereçamento
diferente.

Contenu connexe

Similaire à Pós-Graduação UNA Seminário Padrão Projeto Proxy

Usando Ontologias, Serviços Web Semânticos e Agentes Móveis no Desenvolvimen...
Usando Ontologias, Serviços Web Semânticos  e Agentes Móveis no Desenvolvimen...Usando Ontologias, Serviços Web Semânticos  e Agentes Móveis no Desenvolvimen...
Usando Ontologias, Serviços Web Semânticos e Agentes Móveis no Desenvolvimen...Luiz Henrique Zambom Santana
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoComunidade NetPonto
 
Integrando o dev com o ops - Marcelo Castellani
Integrando o dev com o ops - Marcelo CastellaniIntegrando o dev com o ops - Marcelo Castellani
Integrando o dev com o ops - Marcelo CastellaniiMasters
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaMessias Batista
 
Cloudwalker - processamento distribuído em nuvem
Cloudwalker - processamento distribuído em nuvemCloudwalker - processamento distribuído em nuvem
Cloudwalker - processamento distribuído em nuvemFlávio Lisboa
 
Administração de portais
Administração de portaisAdministração de portais
Administração de portaisFelipe Perin
 
Workshop Elasticsearch - Android Dev Conference 2016
Workshop Elasticsearch - Android Dev Conference 2016Workshop Elasticsearch - Android Dev Conference 2016
Workshop Elasticsearch - Android Dev Conference 2016Thiago Barradas
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidMessias Batista
 
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...Intelie
 
TDC 2013 - Testes - Cloud Load Test - Daniel Semedo
TDC 2013 - Testes - Cloud Load Test - Daniel SemedoTDC 2013 - Testes - Cloud Load Test - Daniel Semedo
TDC 2013 - Testes - Cloud Load Test - Daniel SemedoDaniel Semedo
 
Ferramentas para Ambiente de Desenvolvimento Ágil
Ferramentas para Ambiente de Desenvolvimento ÁgilFerramentas para Ambiente de Desenvolvimento Ágil
Ferramentas para Ambiente de Desenvolvimento ÁgilInael Rodrigues
 
Hexagonal Rails
Hexagonal RailsHexagonal Rails
Hexagonal RailsLuiz Costa
 
Apresentacao Ii Encontro Sl Amazonas Integracao De Frameworks
Apresentacao Ii Encontro Sl Amazonas Integracao De FrameworksApresentacao Ii Encontro Sl Amazonas Integracao De Frameworks
Apresentacao Ii Encontro Sl Amazonas Integracao De FrameworksNelson Sozinho
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-conceptsjorge600
 
Framework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoFramework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoMarcius Brandão
 

Similaire à Pós-Graduação UNA Seminário Padrão Projeto Proxy (20)

Usando Ontologias, Serviços Web Semânticos e Agentes Móveis no Desenvolvimen...
Usando Ontologias, Serviços Web Semânticos  e Agentes Móveis no Desenvolvimen...Usando Ontologias, Serviços Web Semânticos  e Agentes Móveis no Desenvolvimen...
Usando Ontologias, Serviços Web Semânticos e Agentes Móveis no Desenvolvimen...
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de Versão
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Integrando o dev com o ops - Marcelo Castellani
Integrando o dev com o ops - Marcelo CastellaniIntegrando o dev com o ops - Marcelo Castellani
Integrando o dev com o ops - Marcelo Castellani
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
 
Cloudwalker - processamento distribuído em nuvem
Cloudwalker - processamento distribuído em nuvemCloudwalker - processamento distribuído em nuvem
Cloudwalker - processamento distribuído em nuvem
 
Administração de portais
Administração de portaisAdministração de portais
Administração de portais
 
Workshop Elasticsearch - Android Dev Conference 2016
Workshop Elasticsearch - Android Dev Conference 2016Workshop Elasticsearch - Android Dev Conference 2016
Workshop Elasticsearch - Android Dev Conference 2016
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Padrões de projeto
Padrões de projetoPadrões de projeto
Padrões de projeto
 
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...
Poço WEB - VI ENHAPE - Encontro Nacional de Hidráulica de Perfuração de Poços...
 
TDC 2013 - Testes - Cloud Load Test - Daniel Semedo
TDC 2013 - Testes - Cloud Load Test - Daniel SemedoTDC 2013 - Testes - Cloud Load Test - Daniel Semedo
TDC 2013 - Testes - Cloud Load Test - Daniel Semedo
 
Ferramentas para Ambiente de Desenvolvimento Ágil
Ferramentas para Ambiente de Desenvolvimento ÁgilFerramentas para Ambiente de Desenvolvimento Ágil
Ferramentas para Ambiente de Desenvolvimento Ágil
 
Hexagonal Rails
Hexagonal RailsHexagonal Rails
Hexagonal Rails
 
OWASP - Ferramentas
OWASP - FerramentasOWASP - Ferramentas
OWASP - Ferramentas
 
Apresentacao Ii Encontro Sl Amazonas Integracao De Frameworks
Apresentacao Ii Encontro Sl Amazonas Integracao De FrameworksApresentacao Ii Encontro Sl Amazonas Integracao De Frameworks
Apresentacao Ii Encontro Sl Amazonas Integracao De Frameworks
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Framework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoFramework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da Dissertacao
 
Apresentação acadêmica RASEA
Apresentação acadêmica RASEAApresentação acadêmica RASEA
Apresentação acadêmica RASEA
 

Pós-Graduação UNA Seminário Padrão Projeto Proxy

  • 1. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Proxy Carlos Alexandre Correia
  • 2. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto O padrão de projeto Proxy também conhecido como Surrogate e está enquadrado na família comportamental e seu foco e trabalhar como um facilitador a comunicação entre as entidades envolvidas no projeto de software.
  • 3. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Provê um objeto intermediário que permite controlar o acesso ao objeto original.
  • 4. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Redução de custo com em processos que envolvam uma grande carga. Um exemplo simples é a ação de carregar um grupo de imagens.
  • 5. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Proxy é aplicado quando há necessidade de um método de referencia mais versátil e sofisticado a um objeto. Com o controle de acesso a o objeto original. Com o controle de numero de referencia. Verificação se o objeto real está bloqueado antes de ser acessado.
  • 6. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto
  • 7. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Proxy Mantém uma referencia para o objeto real. Fornece interface idêntica a de subject. Controla o acesso ao objeto real.
  • 8. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Pode ser responsável pela criação ou exclusão do objeto real. o Remote Proxy (Prover uma representação local de um objeto que está em endereçamento diferente). o Virtual Proxy (Criar objetos pesados sobre demanda). o Protection Proxy (Controle de acesso ao objeto original). o Smart Proxy (Contar a quantidade de referencias de um objeto de forma que ele possa ser liberado quando não houver mais nenhum).
  • 9. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Subject  Define uma interface comum para o RealSubject e Proxy. RealSubject Define o objeto representado pelo Proxy.
  • 10. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto O Proxy pode, quando apropriado, representa solicitações para o RealSubject.
  • 11. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Vantagens  Adiciona um nível de separação.  Transparência na execução de carregamento de objetos.  Um Proxy Virtual pode implementar otimizações ,como criação de um objeto sob demanda.
  • 12. Pós- Graduação de Engenharia de Software Centrada em Métodos Ágeis Centro Universitário UNA Seminário de padrões de projeto Desvantagens  Fatores externos como queda de rede podem deixar o Proxy inoperante.  Um Proxy Remoto pode ocultar o fato que um objeto reside em um espaço de endereçamento diferente.