
Elementos Básicos de um Proxy da API de Java™ Descritos através de um Exemplo Simples
2005; UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO; Volume: 19; Linguagem: Inglês
ISSN
2317-2193
AutoresGetúlio Moreira, Maria Alice Silveira de Brito,
Tópico(s)Software Engineering Techniques and Practices
ResumoAbstract. In this paper we identify the difficulties associated with the correct understanding of the dynamic proxy Java API. The main obstacles are: the diversity of elements working together for the proxy to achieve its goal, and the dependencies that this functionality has on reflection mechanisms, giving the opportunity to hide code parts from the application on a meta level. Weh ave created a very simple example, applying the proxy in its more primitive role as a message interceptor. This example is described with the purpose of make it clear to the programmer how to identify the four main elements that are the agents of each action regarding creation and invocation: the proxy class, the proxy instance, the invocation handler and the target object.Beyond that, we present the regions where code can and/or must be introduced identifying the base and meta levels of programming. Resumo. Neste trabalho, identificamos as causas das dificuldades de entendimento do uso de dynamic proxy da API de Java, sendo as principais a diversidade de elementos que entram em cena, durante o funcionamento do proxy, e, os artificios dessef uncionamento, que dependem dos conceitos de reflexao, o qual da oportunidades a programacao de incluir codigo, em partes (meta-nivel), que ficam escondidas do codigo da aplicacao. Assim, criamos um exemplo bem simples, empregando o proxy no seu papel mais primitivo possivel, quando implementa um interceptor de mensagens. Esse exemplo foi acompanhado de descricoes, com o proposito de permitir a um programador identificar com clareza os quatro elementos principais, que sao os agentes de cada acao, no curso da criacao e da invocacao: a classe proxy, a instância de proxy, o invocation handler e o objeto alvo, alem das regioes em que deve/pode introduzir codigo, identificando os niveis de programacao base e meta.
Referência(s)