Mirror DSL 1.2  XML
Índice dos Fóruns » Notícias
Autor Mensagem
jonasabreu
Debugger
[Avatar]

Membro desde: 17/09/2007 18:42:58
Mensagens: 52
Offline

A equipe de desenvolvimento do projeto Mirror está muito orgulhosa em anunciar o primeiro release publico do projeto.

Mirror é uma simples camada sobre a Java Reflection API para torná-la mais simples de utilizar.

Da versão 1.0 até este ponto a DSL estava sofrendo muitas mudanças, por isso decidimos não publicá-la.

O site oficial é http://projetos.vidageek.net/mirror/ (em inglês).

Críticas e sugestões são muito bem vindas.

Equipe de Desenvolvimento do Mirror.

Mirror DSL - Reflection de forma simples - http://projetos.vidageek.net/mirror-pt
VidaGeek.net - http://vidageek.net
[Email]
Fabio Kung
JavaEvangelist

Membro desde: 08/03/2004 08:24:47
Mensagens: 445
Localização: São Paulo
Offline

Parabéns pelo projeto; sensacional!

Não acompanhei o desenvolvimento, mas como trabalho com toda a equipe aqui na Caelum, conheço o trabalho de todos: Jonas Abreu, Adriano Almeida e Diego Feitosa.

Desta equipe excelente só poderia sair algo assim bem legal!

Procurando por oportunidades de emprego?
OndeTrabalhar.com
OndeTrabalhar.com Java?


http://blog.caelum.com.br


Fabio Kung
[WWW] [MSN] [ICQ]
Foxlol
Virtual Machine Man
[Avatar]

Membro desde: 02/05/2006 10:17:47
Mensagens: 646
Localização: São José do Rio Pardo - SP
Offline

hAHhahaha curti o "You don't even know it's a tutorial" Tutorial.

Putz mão na roda....

Parabéns pelo projeto

Sun Certified Java Programmer
Sun Certified Web Component Developer
Java EE 5 Business Component Developer Oracle Certified Professional
[MSN] [ICQ]
Mikhas
Virtual Machine Man
[Avatar]

Membro desde: 17/06/2008 11:10:50
Mensagens: 677
Localização: São Paulo
Offline

Cool
Isso apareceu em boa hora.
Estou desenvolvendo um mini framework de persistencia que preciso de reflection. fiz umas classes meia boca.

Isso vai me servir muito bem.

Valew

Edit:
Onde posso postar sugestões?
Ja tenho uma lista de coisas que seriam uteis.

This message was edited 1 time. Last update was at 17/11/2008 10:11:43


Refractor 1.6 - Easy reflection framework
Agora muito mais rapido!
Raze - The fastest CSS selector engine




[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Muito bom. A flexibilidade do código certamente é maior do que o código procedural, além de mais simples de usar do que a própria API de Reflection nua e crua.

No entanto, esse 'syntatic sugar' torna-se mais verboso. Cabe ai a analisar os trade-offs e ver se vale mesmo a pena entrar no purismo do OO ou simplesmente criar um código procedual totalmente straight forward (direto/objetivo).

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Maniezo
JavaTeenager
[Avatar]

Membro desde: 10/04/2006 10:54:35
Mensagens: 190
Localização: São Paulo
Offline

Aproveitando o assunto, gostaria de tirar uma dúvida, é uma dificuldade que tambem tenho na API de Reflection.

Tem como chamar o metodo liga da classe carro sem ter que instancia o obj carro dentro da classe teste, poderia até instaciar mas pegando esse carro por uma variavel String?
Carro obj = new Carro();

Gostaria de passar esse "Carro" atravez de uma variavel String como paramentro de um metodo...

Teste


Carro

SCJP, SCWCD
[WWW]
Mikhas
Virtual Machine Man
[Avatar]

Membro desde: 17/06/2008 11:10:50
Mensagens: 677
Localização: São Paulo
Offline

No caso que você passou agora, nem faz sentido fazer isso. A menos talvez que você queria invocar um metodo estatico

Se voce quer invocar um metodo estatico, no reflection mesmo voce usa algo como:

Method seno = Math.class.getMethod("sin");
seno.invoke(null,new Double(1.123));

Refractor 1.6 - Easy reflection framework
Agora muito mais rapido!
Raze - The fastest CSS selector engine




[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Maniezo wrote:Tem como chamar o metodo liga da classe carro sem ter que instancia o obj carro dentro da classe teste, poderia até instaciar mas pegando esse carro por uma variavel String?


Tem sim:


gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Algum motivo especial pra invoke() e set() não poderem receber direto o nome do método/campo?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
Maniezo
JavaTeenager
[Avatar]

Membro desde: 10/04/2006 10:54:35
Mensagens: 190
Localização: São Paulo
Offline

danieldestro wrote:
Maniezo wrote:Tem como chamar o metodo liga da classe carro sem ter que instancia o obj carro dentro da classe teste, poderia até instaciar mas pegando esse carro por uma variavel String?


Tem sim:



Valew Daniel! Resolveu, era isso mesmo que eu precisava.

Mikhas, esse exemplo é um material de estudo, não faz sentido mesmo mas é o que encontrei pra tentar explicar minha dúvida.
Não conhecia esse "newInstance();". Valew.

SCJP, SCWCD
[WWW]
jonasabreu
Debugger
[Avatar]

Membro desde: 17/09/2007 18:42:58
Mensagens: 52
Offline

Olá Maniezo,

com o Mirror, o código ficaria mais ou menos assim:

Object carro = Mirror.on("pacote.Carro").invoke().constructor().withoutArgs();
Mirror.on(carro).invoke().method("liga").withoutArgs();

Mauricio,

o invoke() não recebe direto o nome porque ele pode ser usado para instanciar um objeto (como no exemplo acima) e o set() para manter o padrão.

Até!

Mirror DSL - Reflection de forma simples - http://projetos.vidageek.net/mirror-pt
VidaGeek.net - http://vidageek.net
[Email]
Maniezo
JavaTeenager
[Avatar]

Membro desde: 10/04/2006 10:54:35
Mensagens: 190
Localização: São Paulo
Offline

jonasabreu wrote:Olá Maniezo,

com o Mirror, o código ficaria mais ou menos assim:

Object carro = Mirror.on("pacote.Carro").invoke().constructor().withoutArgs();
Mirror.on(carro).invoke().method("liga").withoutArgs();

Mauricio,

o invoke() não recebe direto o nome porque ele pode ser usado para instanciar um objeto (como no exemplo acima) e o set() para manter o padrão.

Até!


Bacana, valew!

SCJP, SCWCD
[WWW]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Opa Jonas,

O código fonte tá aonde?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Então o "invoke()" e o "set()" não poderiam ser abolidos?

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
jonasabreu
Debugger
[Avatar]

Membro desde: 17/09/2007 18:42:58
Mensagens: 52
Offline

Olá Mauricio,

por um erro acabei esquecendo de colocar no site (vou corrigir isso o mais rápido possível).

O source está em http://svn.vidageek.net/mirror .

Até!

Mirror DSL - Reflection de forma simples - http://projetos.vidageek.net/mirror-pt
VidaGeek.net - http://vidageek.net
[Email]
 
Índice dos Fóruns » Notícias
Ir para:   
Powered by JForum 2.1.8 © JForum Team