Post on 16-Jun-2015
GENEXUS RUBY: UN PASO ADELANTE
Sabrina JuárezDaniel Méndez
Artech
DesarrolloPuesta en Producció
n
Ruby en corto plazo
FOX PRO PARA WEB!!
AMBIENTE OPEN SOURCE
AGILIDAD EN EL CICLO DE DESARROLLO
Code
Specify
Generate
Run
GeneXus X Evolution 1
o Build All: Reducción de 60% en relación a GX 9.0
o Aumento de 60 % en productividad con respecto a GX X
Lenguaje Dinámico
Lenguaje Interpretad
o
Generador Ruby:Alta
productividad en el
desarrollo
Ciclo de Desarrollo:Tiempos de Full Cycle
Java Net Ruby0
10
20
30
40
50
60
22.2529.43
8.5
CompilaciónGeneraciónSpec
Tie
mp
o (
min
s)
Java Ruby0
5
10
15
20
25
30
Tiempo Total (Spec y Gen-eración parale-las)
Tie
mp
o (m
ins)
Ciclo de Desarrollo:Tiempos de Full Cycle
Ciclo de Desarrollo: líneas
de código generadas
Java Net Ruby0
200000
400000
600000
800000
1000000
1200000
1400000
1600000
12918961411540
400931
Lineas de código
Facilidad de uso…
o Listo para usar!o Intérprete Ruby
o WebRick
o Soporte de SQL Server
DesarrolloPuesta en Producció
n
Ruby en corto plazo
Arquitectura
HTMLCSSJavascript
.RB (fuentes Ruby)
“Json”
Http
Productividad en producción
o Servidores Webo Nginx
o Apache
o Thin
o Mongrel
o Otros
o Hosting Ruby: Rack compatible
Productividad en producción
0 5 10 15 20 25 300
50
100
150
200
250
300
350
JavaRuby 1.8Ruby 1.9
Usuarios
Tie
mp
o (
ms)
Productividad en producción
o Pruebas Batch
Ruby 1.8 Ruby 1.90
50
100
150
200
250
300
350
400
Tie
mp
o s
eg
s
DesarrolloPuesta en Producció
n
Ruby en corto plazo
Evolución
GenexusCardalRocha
1.91.8
RubyIronRubyJRuby
2008 2009 2010
Genexus X Genexus X Ev1 Genexus X Ev2
Plataformas
Plataformas
Origen y expansión de Ruby
JRuby
JRuby implementación 100% Java del lenguaje Ruby .
Hoy 1.3.1 compatible con Ruby MRI 1.8.6 .
En proceso de ser compatible con Ruby 1.9 .
http://jruby.org/
Microsofthttp://www.ironruby.net/
IronRuby implementacion OpenSource de Ruby para .NET, basado en el DynamicLanguageRuntime de MicrosoftIncluido en planes de MS Visual Studio 2010
Antonio Cangiano from IBM
Ruby 1.9Introduce VM• Mejora
desempeño• Mejor uso de
recursos
Algunos problemas de compatibilidad
Ruby 1.9
JRuby
IronRuby
Foco actual
Premisas generador Ruby
Mayor flexibilidad• permitiendo cambios mas rápidos
Mejorar velocidad de generación
Menos código, mas simple• Separar lógica y presentación• Uso de DSL y lenguaje dinámico
Evolución Genexus
2008 2009…
……
Genexus X Ev1
Evolución Genexus
o Mejora en el disparo de eventos
o Soporte REST
Características con liberación temprana en RUBY
Disparo local de eventos
Evento
Evento
GX Trns en Ruby
Nucleo
REST
WebTrn
SOAP
GX BC
Suena bien, pero…
Funciona?
Aplicaciones Ruby en producción
o GxWIki : http://www.gxwiki.com
Apache/2.2.3
Ruby 1.8.7
rack 1.0.0
Operating System: Debian Linux 2.6.18-
5-686
Lab Evento XIX: http://gxruby.genexus.com/FootBall/home2.html
University: http://gxruby.genexus.com/University/mainapp.html
AjaxSample http://gxruby.genexus.com/AjaxSample/home.html
Mas Información..
o Documentación
http://www.genexus.com/rubyo Foro de GX Ruby
http://www.gxtechnical.com/forum
En el Encuentro: Café con Ruby
Martes 15 - 16:30 hs
Sala Torres García, piso 25
Daniel Méndez
dmendez@artech.com.uy
Sabrina Juárez
sjuarez@artech.com.uy