SlideShare ist ein Scribd-Unternehmen logo
1 von 133
JRuby on Rails
al rescate de J2EE
  jorge.rodriguez@continuum.cl
 Fundador & CEO de Continuum
      http://twitter.com/j4rs
        Encuentro Linux 2009
Banana Boy !
Banana Boy !
jorge.rodriguez@continuum.cl

     Fundador & CEO



   http://twitter.com/j4rs
si eres entusiasta de Rails...
info@continuum.cl
Esta presentación esta
basada en hechos reales...
18 años de evolución
Soporte de gigantes
Vendida a muchos clientes
plataforma estable y robusta...
performance
Manejo de la memoria
escalable...
comunidad apasionada
Herramientas, librerías, extensiones
excelente lenguaje...
J2EE
Aplicaciones Web entre otras cosas...
portable, robusta, escalable, blablabla...
Do more with less
    work...
Capa dinámica (código de aplicación)
                   (J2EE / Java)


                       Capa Estable
               (servidores de aplicaciones),
                     Alto desempeño

                         (Java)



http://olabini.com/blog/2008/01/language-explorations/
una buena idea...?
uhmm...
JEE es un poco más...
Para construir una
   aplicación...
2.8 Megas de
Especificación
JAX-WS 2.0                  EJB 3.0
JDBC                      JMX
             SAAJ
                                JAF 1.1
JAXB 2.0            JNDI
          JSF 2.1                JAAS
JSP 2.1             JTA
           JMS              JSTL
ambientes de desarrollo pesados
           200 MB
ciclos de desarrollo lentos...
yo estuve allí...
diversos frameworks para resolver los
         mismos problemas...
mucho código...
muchas versiones...
J2EE para desarrollar ágilmente
Podemos hacer algo?
Yes, we can !
NO J2EE !
                 Entonces que ?


                       Capa Estable
               (servidores de aplicaciones),
                     Alto desempeño

                         (Java)



http://olabini.com/blog/2008/01/language-explorations/
los protagonistas...
¿ Ruby ?
•   lenguaje abierto
•lenguaje abierto

• dinámico, flexible y muy expresivo
•lenguaje abierto

• dinámico, flexible y muy expresivo

• enfocado en la simplicidad y
 productividad
•   lenguaje abierto

• dinámico, flexible y muy expresivo

• enfocado en la simplicidad y
    productividad

•   versión 1.9.1
• lenguaje abierto

• dinámico, flexible y muy expresivo

• enfocado en la simplicidad y
  productividad

• versión 1.9.1

• bla bla bla...
comparar con java...
“Necesito copiar el
  contenido de un
 archivo hacia otro
      archivo”
java
?
después de google...
FileInputStream input = null;
FileOutputStream output = null;
try {
	 try {
	 	 input = new FileInputStream("/tmp/src.txt");
	 } catch (IOException io1) {
	 	 throw new RuntimeException("couldn't open input file", io1);
	 }
	 try {
	 	 output = new FileOutputStream("/tmp/dest.txt");
	 } catch (IOException io2) {
	 	 throw new RuntimeException("couldn't open output file", io2);
	 }
	 byte[] buf = new byte[8192];
	 int numBytesRead = 0;
	 while ((numBytesRead = input.read(buf)) != -1) {
	 	 output.write(buf, 0, numBytesRead);
	 }
} catch (IOException io) {
	 throw new RuntimeException("couldn't read/write or something",
io);
} finally {
try {
	   	 if (input != null) {
	   	 	 input.close();
	   	 }
	   } catch (IOException ignored1) { }
	   try {
	   	 if (output != null) {
	   	 	 output.close();
	   	 }
	   } catch (IOException ignored2) { }
}
ruby
File.open("/tmp/src.txt") do |input|
  File.open("/tmp/dest.txt", "w") do |output|
    output << input.read
  end
end
“Quiero buscar todos los
 patrones twitters en la
       sentencia”
java
después de google...
String x = "@j4rs en @encuentrolinux mostrando jruby";

Pattern p = Pattern.compile("@w+");
Matcher m = p.matcher(x);

while (m.find()) {
	 System.out.println(m.group());
}
ruby
"@j4rs en @encuentrolinux mostrando jruby".scan(/@w+/).each do |t|
  puts t
end
“Quiero repetir ‘Hola
 EL2009’ 5 veces...”
java
for (int i = 0; i < 5; i++) {
	 System.out.println("Hola EL2009");
}
ruby
5.times {puts "Hola EL2009"}
“Crear la clase
Rectángulo y definir su
        área”
java
public class Rectangulo {

	 private double a;
	 private double b;

	   public Rectangulo(int a, int b) {
	   	 this.a = a;
	   	 this.b = b;
	   }

	   /**
	     * @return the a
	     */
	   public double getA() {
	   	 return a;
	   }
	   /**
	     * @param a the a to set
	     */
	   public void setA(double a) {
	   	 this.a = a;
	   }
/**
	     * @return the b
	     */
	   public double getB() {
	   	 return b;
	   }
	   /**
	     * @param b the b to set
	     */
	   public void setB(double b) {
	   	 this.b = b;
	   }

	   /**
	     * @return
	     */
	   public double area() {
	   	 return a*b;
	   }

}
ruby
class Rectangulo
	 attr_accessor :a, :b

  def initialize(a, b)
    @a = a;
    @b = b;
  end

  def area()
    a*b
  end

end
“...ruby focus on humans...”


       “...we are masters,
 machines are the slaves...”
but so?, esto es java, de
  que me sirve ruby?
próximo protagonista
¿ JRuby ?
•   Implementación de Ruby 100 % en Java
•Implementación de Ruby 100 % en Java

• 5 veces más rapida que C-Ruby
•Implementación de Ruby 100 % en Java

• 5 veces más rapida que C-Ruby

• Versión estable 1.3 (Comp. Ruby 1.8.7)
•Implementación de Ruby 100 % en Java

• 5 veces más rapida que C-Ruby

• Versión estable 1.3 (Comp. Ruby 1.8.7)

• JRuby 1.4 en Octubre (Comp. Ruby 1.9)
•Implementación de Ruby 100 % en Java

• 5 veces más rapida que C-Ruby

• Versión estable 1.3 (Comp. Ruby 1.8.7)

• JRuby 1.4 en Octubre (Comp. Ruby 1.9)

• Instalación: jruby.jar
Java <=> Ruby
demo: Java Swing
demo:
probar lib java sin main()
próximo protagonista
¿ Rails ?
• framework web open source
• framework web open source
• construido sobre y para Ruby
• framework web open source
• construido sobre y para Ruby
• orientado al desarrollo ágil
• framework web open source
• construido sobre y para Ruby
• orientado al desarrollo ágil
• una filosofía diferente de crear
  aplicaciones web
• framework web open source
• construido sobre y para Ruby
• orientado al desarrollo ágil
• una filosofía diferente de crear
  aplicaciones web

• “convención sobre configuración...”
• framework web open source
• construido sobre y para Ruby
• orientado al desarrollo ágil
• una filosofía diferente de crear
  aplicaciones web

• “convención sobre configuración...”
• mucho más...
cultura alternativa...
Libertad...
Libertad...




No precisamente este tipo de libertad...
diversión...
demo: al final
último protagonista...
+


¿ JRuby on Rails ?
En la unión está la fuerza...
Capa dinámica (código de aplicación)
                      JRuby (Rails)




                       Capa Estable
               (servidores de aplicaciones),
                     Alto desempeño

                         (Java)



http://olabini.com/blog/2008/01/language-explorations/
una historia de éxito...
un cliente estratégico...
el proyecto...
1. Parsear XMLs
1. Parsear XMLs

2. Crear prototipo WS-*
1. Parsear XMLs

2. Crear prototipo WS-*

3. Consumir WS-*
1. Parsear XMLs

2. Crear prototipo WS-*

3. Consumir WS-*

4. Generar PDFs
1. Parsear XMLs

2. Crear prototipo WS-*

3. Consumir WS-*

4. Generar PDFs

5. Mensajería asíncrona vía MQ Series
1. Parsear XMLs

2. Crear prototipo WS-*

3. Consumir WS-*

4. Generar PDFs

5. Mensajería asíncrona vía MQ Series

6. Mucho de HTML + CSS + JS
tiempo = 3 días
Negociamos con el
    cliente:

No lo logramos con
        J2EE
Única restricción:
Debe correr en nuestra
   Infraestructura:
        java
+


JRuby on Rails
3 días y 150 lineas de
código más tarde estaba
           lista
Un secreto:
Problemas de performance

  Necesitamos migrar la
    aplicación a Java
Tiempo:

Una Noche calurosa de
       Miami
demo final:
JRuby on Rails
Aplicación:
“Social Todo List”
Conclusiones
Capa dinámica (código de aplicación)
                   JRuby, Jython, otro...




                       Capa Estable
               (servidores de aplicaciones),
                     Alto desempeño

                         (Java)



http://olabini.com/blog/2008/01/language-explorations/
Poliglotas
¿ Preguntas ?

http://continuum.cl

http://twitter.com/j4rs

Weitere ähnliche Inhalte

Was ist angesagt?

Desarrollo web en Nodejs con Pillars por Chelo Quilón
Desarrollo web en Nodejs con Pillars por Chelo QuilónDesarrollo web en Nodejs con Pillars por Chelo Quilón
Desarrollo web en Nodejs con Pillars por Chelo Quilónbetabeers
 
Java script tarea
Java script tareaJava script tarea
Java script tareasaullopes24
 
Joinea - mongoDB en php y Symfony2
Joinea - mongoDB en php y Symfony2Joinea - mongoDB en php y Symfony2
Joinea - mongoDB en php y Symfony2sergiovier
 
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de MavenIniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de MavenVíctor Leonel Orozco López
 
Nodejs.introduccion
Nodejs.introduccionNodejs.introduccion
Nodejs.introduccionkillfill
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Javapbcanessa
 
Ruby on the Rails
Ruby on the RailsRuby on the Rails
Ruby on the Rails000ari2014
 
Breve introducción a Apache Ant
Breve introducción a Apache AntBreve introducción a Apache Ant
Breve introducción a Apache AntIker Canarias
 
Información básica Java
Información básica JavaInformación básica Java
Información básica JavaFordBull2er
 

Was ist angesagt? (9)

Desarrollo web en Nodejs con Pillars por Chelo Quilón
Desarrollo web en Nodejs con Pillars por Chelo QuilónDesarrollo web en Nodejs con Pillars por Chelo Quilón
Desarrollo web en Nodejs con Pillars por Chelo Quilón
 
Java script tarea
Java script tareaJava script tarea
Java script tarea
 
Joinea - mongoDB en php y Symfony2
Joinea - mongoDB en php y Symfony2Joinea - mongoDB en php y Symfony2
Joinea - mongoDB en php y Symfony2
 
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de MavenIniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
 
Nodejs.introduccion
Nodejs.introduccionNodejs.introduccion
Nodejs.introduccion
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Ruby on the Rails
Ruby on the RailsRuby on the Rails
Ruby on the Rails
 
Breve introducción a Apache Ant
Breve introducción a Apache AntBreve introducción a Apache Ant
Breve introducción a Apache Ant
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
 

Andere mochten auch

Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy Kleinberg
Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy KleinbergCommuniqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy Kleinberg
Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy KleinbergEco-evenement / Eco-communication
 
colocacion dientes anteriores
colocacion dientes anteriorescolocacion dientes anteriores
colocacion dientes anterioresklauklau
 
Guía de totalitarismos 1º medio historia 2013
Guía de totalitarismos 1º medio historia 2013Guía de totalitarismos 1º medio historia 2013
Guía de totalitarismos 1º medio historia 2013Jose Avendaño
 
diana estefania huerta
diana estefania huertadiana estefania huerta
diana estefania huertadiana
 
Presentacion 141009 140408
Presentacion 141009 140408Presentacion 141009 140408
Presentacion 141009 140408fashiondesign
 
El Calentamiento Global Sin Hipervinculos Y Ocultas
El  Calentamiento  Global Sin Hipervinculos Y OcultasEl  Calentamiento  Global Sin Hipervinculos Y Ocultas
El Calentamiento Global Sin Hipervinculos Y OcultasKathrym
 
Dcn 2009 Conferencia Magistral
Dcn 2009 Conferencia MagistralDcn 2009 Conferencia Magistral
Dcn 2009 Conferencia Magistralgladys
 
Prud hommme
Prud hommmePrud hommme
Prud hommmelpeltier
 
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.Ppt
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.PptEjercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.Ppt
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.PptRocio Alferez Torres
 
Calendario de Octubre
Calendario de OctubreCalendario de Octubre
Calendario de Octubrelielena26
 
Una vida difícil. Omaima y Noura
Una vida difícil. Omaima y NouraUna vida difícil. Omaima y Noura
Una vida difícil. Omaima y Nourayanete
 

Andere mochten auch (20)

Bloque II metodos
Bloque II metodosBloque II metodos
Bloque II metodos
 
E learning
E learningE learning
E learning
 
Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy Kleinberg
Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy KleinbergCommuniqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy Kleinberg
Communiqué presse Août 2013 : Lucien Morisset, Nicole Brousse, Jérémy Kleinberg
 
la amistad
la amistadla amistad
la amistad
 
colocacion dientes anteriores
colocacion dientes anteriorescolocacion dientes anteriores
colocacion dientes anteriores
 
Guía de totalitarismos 1º medio historia 2013
Guía de totalitarismos 1º medio historia 2013Guía de totalitarismos 1º medio historia 2013
Guía de totalitarismos 1º medio historia 2013
 
diana estefania huerta
diana estefania huertadiana estefania huerta
diana estefania huerta
 
Presentacion 141009 140408
Presentacion 141009 140408Presentacion 141009 140408
Presentacion 141009 140408
 
El Calentamiento Global Sin Hipervinculos Y Ocultas
El  Calentamiento  Global Sin Hipervinculos Y OcultasEl  Calentamiento  Global Sin Hipervinculos Y Ocultas
El Calentamiento Global Sin Hipervinculos Y Ocultas
 
Dcn 2009 Conferencia Magistral
Dcn 2009 Conferencia MagistralDcn 2009 Conferencia Magistral
Dcn 2009 Conferencia Magistral
 
P nuc
P nucP nuc
P nuc
 
Presentación CRM
Presentación CRMPresentación CRM
Presentación CRM
 
Prud hommme
Prud hommmePrud hommme
Prud hommme
 
Projet e portfolio
Projet e portfolioProjet e portfolio
Projet e portfolio
 
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.Ppt
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.PptEjercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.Ppt
Ejercicio 3 Parte 1. Curso Power Point.Rocio Alferez Torres.Ppt
 
20101201 across evia
20101201 across evia20101201 across evia
20101201 across evia
 
Calendario de Octubre
Calendario de OctubreCalendario de Octubre
Calendario de Octubre
 
Ch09 e
Ch09 eCh09 e
Ch09 e
 
Aviacion
AviacionAviacion
Aviacion
 
Una vida difícil. Omaima y Noura
Una vida difícil. Omaima y NouraUna vida difícil. Omaima y Noura
Una vida difícil. Omaima y Noura
 

Ähnlich wie JRuby Al Rescate J2EE

JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011Jano González
 
Jruby On Rails. Ruby on Rails en la JVM
Jruby On Rails. Ruby on Rails en la JVMJruby On Rails. Ruby on Rails en la JVM
Jruby On Rails. Ruby on Rails en la JVMjavier ramirez
 
Sesión 03: Ruby y SAP
Sesión 03: Ruby y SAPSesión 03: Ruby y SAP
Sesión 03: Ruby y SAPBiz Partner
 
SAP Inside Track Lima 09 - Ruby y SAP
SAP Inside Track Lima 09 - Ruby y SAPSAP Inside Track Lima 09 - Ruby y SAP
SAP Inside Track Lima 09 - Ruby y SAPAlvaro Tejada
 
JRuby: Ruby en un mundo enterprise
JRuby: Ruby en un mundo enterpriseJRuby: Ruby en un mundo enterprise
JRuby: Ruby en un mundo enterpriseJano González
 
Webminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaWebminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaDomingo Suarez Torres
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma JavaEudris Cabrera
 
Lenguajes Dinámicos en la Java Virtual Machine
Lenguajes Dinámicos en la Java Virtual MachineLenguajes Dinámicos en la Java Virtual Machine
Lenguajes Dinámicos en la Java Virtual MachineÓscar Andrés López
 
Antecedentes java
Antecedentes java Antecedentes java
Antecedentes java Yo Profesor
 
CommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfectaCommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfectaIván López Martín
 

Ähnlich wie JRuby Al Rescate J2EE (20)

JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
 
sesion_01-JAVA.pdf
sesion_01-JAVA.pdfsesion_01-JAVA.pdf
sesion_01-JAVA.pdf
 
Jruby On Rails. Ruby on Rails en la JVM
Jruby On Rails. Ruby on Rails en la JVMJruby On Rails. Ruby on Rails en la JVM
Jruby On Rails. Ruby on Rails en la JVM
 
Sesión 03: Ruby y SAP
Sesión 03: Ruby y SAPSesión 03: Ruby y SAP
Sesión 03: Ruby y SAP
 
SAP Inside Track Lima 09 - Ruby y SAP
SAP Inside Track Lima 09 - Ruby y SAPSAP Inside Track Lima 09 - Ruby y SAP
SAP Inside Track Lima 09 - Ruby y SAP
 
Java poliglota
Java poliglotaJava poliglota
Java poliglota
 
Jano Gonzalez - jruby
Jano Gonzalez - jrubyJano Gonzalez - jruby
Jano Gonzalez - jruby
 
JRuby: Ruby en un mundo enterprise
JRuby: Ruby en un mundo enterpriseJRuby: Ruby en un mundo enterprise
JRuby: Ruby en un mundo enterprise
 
Webminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaWebminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma Poliglota
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 
C1 java introduccion
C1 java introduccionC1 java introduccion
C1 java introduccion
 
C1 java introduccion
C1 java introduccionC1 java introduccion
C1 java introduccion
 
Diapositivas de JAVA
Diapositivas de JAVADiapositivas de JAVA
Diapositivas de JAVA
 
Java world
Java worldJava world
Java world
 
Lenguajes Dinámicos en la Java Virtual Machine
Lenguajes Dinámicos en la Java Virtual MachineLenguajes Dinámicos en la Java Virtual Machine
Lenguajes Dinámicos en la Java Virtual Machine
 
Dynamic jvm
Dynamic jvmDynamic jvm
Dynamic jvm
 
Antecedentes java
Antecedentes java Antecedentes java
Antecedentes java
 
RoR y eLearning 2.0
RoR y eLearning 2.0RoR y eLearning 2.0
RoR y eLearning 2.0
 
CommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfectaCommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
 
Java 1.8:Road to Functional Language
Java 1.8:Road to Functional LanguageJava 1.8:Road to Functional Language
Java 1.8:Road to Functional Language
 

Kürzlich hochgeladen

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 

Kürzlich hochgeladen (13)

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 

JRuby Al Rescate J2EE

Hinweis der Redaktion

  1. Esto es lo que tenemos con J2EE, una plataforma muy estable, muy escalable encima de la cual construimos aplicaciones usando tambien una plataforma muy estable y muy escalable.