SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Tendances

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
 

Tendances (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
 

En vedette

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
 

En vedette (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
 

Similaire à 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
 

Similaire à 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
 

Dernier

tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesEdomar AR
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 

Dernier (20)

tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, Aplicaciones
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 

JRuby Al Rescate J2EE

Notes de l'éditeur

  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.