Olá !
Já trabalhei em um projeto de pesquisa na minha universidade utilizando reflexão
no desenvolvimento de sistemas distribuídos tolerantes a falhas.
Durante a minha pesquisa encontrei uma versão do java chamada
MetaJava, que agora se chama MetaXa. É uma variação que implementa
reflexão comportamental além da estrutural.
A página do MetaXa é
http://www4.informatik.uni-erlangen.de/Projects/PM/Java/
O MetaXa não utiliza pré processador, é uma máquina virtual implementada
para suportar meta-objetos (reflexão estrutural).
Acabei não utilizando o MetaXa pois eu iria utilizar RMI, e o MetaXa
não possuia a implementação ainda destas bibliotecas.
Não conhecia o OpenJava e vou dar uma olhada...

Ricardo Neisse - [EMAIL PROTECTED]

Fabricio Jailson Barth gravada:

>   Na verdade o negocio funciona mais ou menos assim:
>
>   Na sua aplicacao vc possui classes e objetos responsaveis pela logica da
> aplicacao e outras classes e objetos chamadas de meta-classes e
> meta-objetos que tem a capacidade de obter informacoes sobre as classes e
> objetos do nivel base (aquelas responsaveis pela logica da aplicacao).
>   Estes meta-objetos podem obter informacoes sobre a estrutura e sobre o
> comportamento dos objetos-base.
>   Atraves de um Meta Protocolo toda mensagem enviada ao objeto base eh
> interceptada pelo meta-objeto correspondente, e pode durante a execucao da
> aplicacao mudar a sua estrutura e seu comportamento, conforme estipulado
> pelo meta-objeto (isso que eh o mais interessante !! Mudar o comportamento
> e a estrutura de um programa em tempo de execucao).
>   Este conceito tem uma grande utilidade para sistemas com grande
> complexidade, pois pode dividir os conceitos funcionais dos nao funcionais
> em niveis. E implementado em sistemas de tempo real, de tolerancia a
> falhas e distribuidos.
>   Porem, todos estes conceitos sao muito bonitos, mas nao existe uma
> linguagem de programacao que implemente totalmente os conceitos de
> reflexao estrutural, comportamento e o protocolo de comunicacao. Uma
> alternativa eh a nossa querida linguagem Java, que na sua ultima versao do
> Jdk implementa reflexao estrutural sem o conceito de meta protocolo
> atraves da package java.lang.reflect.
>   Para tornar possivel a completa utilizacao dos conceitos de reflexao
> computacional utilizando a linguagem Java eh necessario utilizar um
> pre-processador, chamado OpenJava, que interpreta o codigo com construcoes
> reflexidas transformando-o em codigo nativo da linguagem que pode ser
> interpretado por qualquer maquina virtual Java.
>   Outra alternativa eh o pre-processadore Open C++, mas eu prefiro Java.
>
>   O negocio eh bem interessante, quem tiver algumas ideias para serem
> trocadas, assim como duvidas (se eu puder ajudar), estou a disposicao.
>
>   At+ !
>
> On Tue, 29 Feb 2000, Rodrigo Moro wrote:
>
> > Bom, nao sei a definicao oficial de reflexao, mas sei como usa-la e para que serve:
> > Basicamente, a reflexao permite que vc tenha um objeto de qualquer classe e possa 
>(sem conhecer nem a classe do objeto) descobrir quais sao os metodos (acho que soh os 
>publicos, nao tenho certeza), campos, construtores, etc. da classe e invocar esses 
>metodos e obter os valores dos campos de um objeto.
> > Parece magica, ne? Mas eh real...
> > Mais informacoes, vide tutorial do Java (da Sun)...
> > *********** REPLY SEPARATOR ***********
> > On 28/02/2000, at 20:22, Israel wrote:
> > >Gostaria de Saber também. O que 'reflexão sobre Objetos??
> > >
> > >    Seria possivel uma explicação sucinta, ou um texto explicativo?
> >
> >     --------------------------- LISTA SOUJAVA ---------------------------
> >     http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
> >     [dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
> >     [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
> >     ---------------------------------------------------------------------
> >
>
>                         Fabricio Jailson Barth
>                         Ciencias da Computacao
>                         Universidade Regional de Blumenau
>
>     --------------------------- LISTA SOUJAVA ---------------------------
>     http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
>     [dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
>     [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
>     ---------------------------------------------------------------------

    --------------------------- LISTA SOUJAVA ---------------------------
    http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
    [dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------

Responder a