Proxy - design patterns

870 palavras 4 páginas
Proxy

Objetivo
O Padrão Proxy visa permitir que clientes de um serviço utilizem uma referência do objeto real que oferece o serviço. Aumenta a eficiência, a segurança e facilita o acesso. O Proxy pode substituir o servidor quando ocorrem problemas com o servidor e também permite criar uma independência de endereçamento e implementação do servidor.
Uma situação: Um cliente precisa acessar um serviço de um outro objeto em um sistema distribuído. O acesso direto é tecnicamente possível, mas pode não ser a melhor opção. O acesso direto pode não ser eficiente em tempo de execução, ter alto custo e não ser seguro.
O cliente não precisa ficar dependente de endereço de rede do objeto.
Então utiliza-se uma referência do cliente que ofereça o serviço de forma idêntica e realize pré e pós-processamento adicionais para garantir a qualidade do serviço. O objeto real que realiza o trabalho fica escondido pelo Proxy. Isto é aplicável sempre que houver a necessidade de ter uma referência mais versátil e sofisticada para um objeto do que um simples ponteiro. Proxies podem ser serializados. Substituir um objeto por um Proxy, ou vice-versa, deve ser transparente ao cliente.
O Proxy tem diversas finalidades: delegação, segurança (firewall), RMI, etc.
Situações comuns:
· Proxy remoto - providencia um representante local de um objeto que se encontra num espaço de endereçamento diferente.
· Proxy virtual - cria objetos dispendiosos apenas por pedido (on demand).
· Proxy de proteção - controla o acesso ao objeto original.
· Smart Reference - é um substituto de um ponteiro básico que, executa ações adicionais, quando o objeto é acessado.

Estrutura do Proxy
Proxy: Mantém uma referência que permite acessar o objeto real.
Subject: Define uma interface que é implementada por RealSubject e Proxy.
RealSubject: Define o objeto real que o proxy representa.
Participações:
· Subject: Define uma interface comum para o RealSubject e o Proxy. Desta forma, o Proxy pode ser usado

Relacionados

  • Design Patterns
    3121 palavras | 13 páginas
  • Engenharia de software
    3271 palavras | 14 páginas
  • Itil e cobit
    2759 palavras | 12 páginas
  • Padrões de Projetos
    5705 palavras | 23 páginas
  • Padroes_projetos_questionario_v1.pdf
    7828 palavras | 32 páginas
  • Design patterns
    3726 palavras | 15 páginas
  • Design Patterns
    1430 palavras | 6 páginas
  • Padroes de projeto
    4822 palavras | 20 páginas
  • Tccc
    5131 palavras | 21 páginas
  • LocadoraBD
    2068 palavras | 9 páginas