Ahoj,

ruby jako jazyk zboznuju a tohle me fakt potesilo. Vypada to moc dobre. Javovska aplikace uz nemusi byt tak uplne javovska? ;-)

Dalsi otazka je, jak to bude rychle? :(

Honza

Martin Kuba napsal(a):
Hraju si s novym scripting API v JDK 6.0 a mam potrebu se podelit o zazitky :-) Za skriptovaci jazyk jsem si zvolil JRuby.

Co mne prijde genialni je volne michani trid z Java a z Ruby.
Konkretne si muzu v Jave nadefinovat interface, v Ruby ho implementovat
jako Ruby tridu, a tu vratit zpatky do Javy:

--- MujJavaInterface.java ---
package cz.cesnet.meta.jruby;

public interface MujJavaInterface {
    String mojeMetoda(Long num);
}


---- mujruby.rb ---

class MojeImplClass < Java::cz.cesnet.meta.jruby.MujJavaInterface
 def mojeMetoda(num)
    return "Ja jsem metoda z Ruby, num="+num.to_s()
 end
end


--- kod nekde ----

ScriptEngine jruby = new ScriptEngineManager().getEngineByName("jruby");
jruby.eval(new BufferedReader(new FileReader("mujruby.rb")));

MujJavaInterface mji =
             (MujJavaInterface) jruby.eval("MojeImplClass.new");
String s = mji.mojeMetoda(1l);


Ze to jde opacne (z Javy do Ruby) jsem cekal, koneckoncu v kazdem browseru se daji z JavaScriptu volat Java tridy, ale tohle mne nadchlo.

Makub

Odpovedet emailem