SlideShare a Scribd company logo
1 of 29
Download to read offline
Vaadin on Grails
Ing. Carlos Camacho
16/11/2013
Presentación (un poco personal)
●

Carlos Camacho.
–

Profesor por vocación.

–

Pertenezco al lado oscuro de la fuerza (Dark Side).

–

Aldea de la Hoja (Konoha)

–

Evangelista de Java.

–

Apasionado de Linux.

–

Nacido en la era Nintendo. Amante de los RPG
(Chrono Trigger).

–

Rock, Merengue, Bachata, Balada, Típico, Salsa,
Son, Dembow, Reggaeton. (Pirata)
Presentación (un poco más serio)
●

Carlos Camacho.
–

Ingeniero Telemático.

–

Magíster Tecnología Educativa.

–

Profesor Departamento de Sistema, PUCMM.

–

Más de 6 años de experiencia desarrollo de sistemas
en tecnología Java (JSE y JEE).

–

3 años de implementación en sistemas basados en
Grails.

–

Coordinador de Sistemas, Reefer Services, S.A.S.

–

Fundación Código Libre Santiago - Miembro Fundador.

–

Presidente AvatharTech.
Presentación (un poco más serio)
●

Algunas Empresas:
–

Cementos Cibao.

–

Edenorte.

–

Reefer Services.

–

Marítima Dominicana.

–

StoneWood.

–

Geocom.

–

PyC Servicios

–

NewSoft.

–

NewtonSoft
Presentación (un poco más serio)
●

Algunos API, Frameworks, Motores :
Objetivos
●

Introducción a Vaadin.

●

Integración Vaadin con Grails.

●

Demostración.
Desarrollo Web - Retos
●

●

●

●

●

Todas las aplicaciones están ambiente Desktop
deben / están pasando a la web.
Los componentes actuales HTML no están
implementados para dar una experiencia similar a
las aplicaciones Desktop.
Convergen muchas tecnologías diferentes
(JavaScript, Server Side, XML, JSON, HTML, CSS,
AJAX, Reverse AJAX, entre otras)
Diseños vistosos ameritan contar con un recurso con
las habilidades y conocimiento de Diseñador Web.
Del Desktop a la Web y al Mobile. :S
¿Qué es Vaadin?
●

Es un framework de aplicaciones Web RIA (Rich
Internet Application) del lado del servidor, cuyo
objetivo es desarrollar aplicaciones con un
comportamiento en funcionalidad y fluidez a las
aplicaciones de escritorios.

●

Basado en componentes.

●

Lenguaje Java, soportando Groovy y Scala.

●

●

Integra GWT (Google Web Toolkit) como librería de
renderizado.
Está enfocado para trabajar en la vista UI (User
Interface).
Características
●

●

●

●

Implementa componentes necesarios para una
experiencia satisfactoria por el usuario.
Componentes basados en los estándares de la Web
(HTML 5).
El código que implementa la regla de negocio corre
en el servidor, dando seguridad a nuestra aplicación.
Los componentes trabajan con todos los
navegadores modernos para desktop y dispositivos
portátiles, sin necesidad de plugin.

●

Los componentes son modulares.

●

Libertad para integrar con GWT, Javacript y HTML 5.
Características
●

Soporte para Servlets y Portlets.

●

Disponible cerca de 355 add-ons

●

●

●

●

110,000 programadores repartidos en 6,500
ciudades.
Un crecimiento inter-anual de 93%.
Licencia Open Source basada en Apache, con
soporte comercial.
Más de 10 años de historia y proyectos
implementados sobre el framework.

Fuente: https://vaadin.com/home#peace
Ventajas
●

●

●

●

●

Programación en Java o lenguajes basados en la
JVM (Groovy o Scala).
No necesitamos programar en JavaScritp.
Esquema de trabajo igual a la programación
Desktop. Swing o SWT.
Uso de las técnica AJAX de manera automática.
La complejidad de la vista se simplifica para el
desarrollador, enfocando su tiempo a la lógica de
negocio.
Vaadin vs GWT
Entorno de Desarrollos
●

Independiente de IDE.

●

Plugins existente para:
–
–

Eclipse.

–
●

Netbeans.
Intellij IDEA.

Editor visual en Eclipse.
Estructura
Estructura

Fuente: https://vaadin.com/learn#programming-model
Comparación otros framework

Fuente: https://vaadin.com/comparison
¿Quién lo usa?

Fuente: https://vaadin.com/who-is-using-vaadin
¡Vamos al Código!
●

Instructivos:
–
–

●

Hola Mundo :-D → Código | Corrida
Calculadora → Código | Corrida

Los complejos:
–

Addressbook → Código | Corrida

–

VaadinTunes - > Corrida
Grails
Características del Framework
●

●

●

●

Corre sobre una maquina virtual de Java. Integración completa con Java.
Implementa la pila completa (Full-stack) Java EE (Java Platform,
Enterprise Edition).
Basado en el lenguaje dinámico (Groovy) y tecnología Java (Spring y
Hibernate).
Proporciona:
–
–

Incluye servidor web, base de datos, gestión dependencia y recarga
automática sobre los cambios.

–
●

Desarrollo orientado a pruebas.

Gran biblioteca de plugins

Filosofía:
–
–

●

Convención sobre Configuración (CoC, siglas en Ingles).
No lo repitas (DRY, Don't Repeat Yourself).

Inspirado en frameworks como Ruby on Rails y Django
Puntos fuertes - Grails
●

Excelente e intuitivo manejo del ORM.

●

Manejo de transacciones utilizando los Services.

●

Soporte multi-idioma.

●

Inyección de dependencia.

●

Más 700 plugins para extender funcionalidad.
Requerimientos Técnicos
Grails SDK
●

●

Similar al JDK (Java Developer Kit), contiene
las librerías, scripts y clases que componen el
framework de Grails, permitiendo desarrollar
bajo dicho ambiente.
Está disponible en el site oficial:
http://grails.org/download
IDE – Integrated Development
Environment
●

●

No es imprescindible su uso. Vi, Vim, Emacs o
editor de texto simple son validos.
¿Exigente?
–

Groovy and Grails Tool Suite. (Soportando por
Spring, Gratis)

–

Eclipse con plugins. (Gratis)

–

Netbeans. (Gratis)

–

Intellij IDE Ultimate. (Pago, lo vale :-D)
¿Cómo Integrar Vaadin & Grails?
●

Utilizar el plugin oficial: http://grails.org/plugin/vaadin

●

Modificar el URL Mapping Grails.
Aplicación Demo – En vivo
¿Preguntas?
Contacto
Email: carlosalfredocamacho@gmail.com /
ccamachog@avathartech.com
Twitter: ccamachog
Muchas Gracias

More Related Content

What's hot

Proyecto Hola Mundo java.Programación.
Proyecto Hola Mundo java.Programación.Proyecto Hola Mundo java.Programación.
Proyecto Hola Mundo java.Programación.Isabel Gómez
 
Análisis de Grav Cms, ¿es mejor que Wordpress?
Análisis de Grav Cms, ¿es mejor que Wordpress?Análisis de Grav Cms, ¿es mejor que Wordpress?
Análisis de Grav Cms, ¿es mejor que Wordpress?Daniel Primo
 
Integrando Groovy & Grails en el proceso de desarrollo
Integrando Groovy & Grails en el proceso de desarrolloIntegrando Groovy & Grails en el proceso de desarrollo
Integrando Groovy & Grails en el proceso de desarrolloJose Juan R. Zuñiga
 
Desarrollando KDevelop Ruby
Desarrollando KDevelop RubyDesarrollando KDevelop Ruby
Desarrollando KDevelop Rubykdeespana
 
Introduccción a la programación en Joomla!
Introduccción a la programación en Joomla!Introduccción a la programación en Joomla!
Introduccción a la programación en Joomla!Roberto Segura
 
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)Jose Juan R. Zuñiga
 
Los reinos de finizens - Nuestro stark tecnológico
Los reinos de finizens - Nuestro stark tecnológicoLos reinos de finizens - Nuestro stark tecnológico
Los reinos de finizens - Nuestro stark tecnológicoFinizens
 
Java script(1)
Java script(1)Java script(1)
Java script(1)trazco
 
Java script(1)
Java script(1)Java script(1)
Java script(1)mat3matik
 
Dragome en JavaConf Buenos Aires 2014
Dragome en JavaConf Buenos Aires 2014 Dragome en JavaConf Buenos Aires 2014
Dragome en JavaConf Buenos Aires 2014 Fernando Petrola
 
Introducción a la programación para joomla
Introducción a la programación para joomlaIntroducción a la programación para joomla
Introducción a la programación para joomlaRoberto Segura
 
Uso de tecnologías modernas en joomla
Uso de tecnologías modernas en joomlaUso de tecnologías modernas en joomla
Uso de tecnologías modernas en joomlaRoberto Segura
 
jBPM: Implementando Procesos con Software Libre
jBPM: Implementando Procesos con Software LibrejBPM: Implementando Procesos con Software Libre
jBPM: Implementando Procesos con Software LibrePablo Sepulveda P.
 
Desarrollo Agil con Ruby Y Rails
Desarrollo Agil con Ruby Y RailsDesarrollo Agil con Ruby Y Rails
Desarrollo Agil con Ruby Y RailsFran Diéguez
 
¿Por qué usar frameworks javascript?
¿Por qué usar frameworks javascript?¿Por qué usar frameworks javascript?
¿Por qué usar frameworks javascript?aitorgr
 
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Micael Gallego
 
Presentacion Javascript
Presentacion JavascriptPresentacion Javascript
Presentacion JavascriptNESTIRRI
 

What's hot (20)

Grails
GrailsGrails
Grails
 
Proyecto Hola Mundo java.Programación.
Proyecto Hola Mundo java.Programación.Proyecto Hola Mundo java.Programación.
Proyecto Hola Mundo java.Programación.
 
Análisis de Grav Cms, ¿es mejor que Wordpress?
Análisis de Grav Cms, ¿es mejor que Wordpress?Análisis de Grav Cms, ¿es mejor que Wordpress?
Análisis de Grav Cms, ¿es mejor que Wordpress?
 
Integrando Groovy & Grails en el proceso de desarrollo
Integrando Groovy & Grails en el proceso de desarrolloIntegrando Groovy & Grails en el proceso de desarrollo
Integrando Groovy & Grails en el proceso de desarrollo
 
Desarrollando KDevelop Ruby
Desarrollando KDevelop RubyDesarrollando KDevelop Ruby
Desarrollando KDevelop Ruby
 
Introduccción a la programación en Joomla!
Introduccción a la programación en Joomla!Introduccción a la programación en Joomla!
Introduccción a la programación en Joomla!
 
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
 
Los reinos de finizens - Nuestro stark tecnológico
Los reinos de finizens - Nuestro stark tecnológicoLos reinos de finizens - Nuestro stark tecnológico
Los reinos de finizens - Nuestro stark tecnológico
 
Java script(1)
Java script(1)Java script(1)
Java script(1)
 
Java script(1)
Java script(1)Java script(1)
Java script(1)
 
Dragome en JavaConf Buenos Aires 2014
Dragome en JavaConf Buenos Aires 2014 Dragome en JavaConf Buenos Aires 2014
Dragome en JavaConf Buenos Aires 2014
 
Introducción a la programación para joomla
Introducción a la programación para joomlaIntroducción a la programación para joomla
Introducción a la programación para joomla
 
Java poliglota
Java poliglotaJava poliglota
Java poliglota
 
Uso de tecnologías modernas en joomla
Uso de tecnologías modernas en joomlaUso de tecnologías modernas en joomla
Uso de tecnologías modernas en joomla
 
jBPM: Implementando Procesos con Software Libre
jBPM: Implementando Procesos con Software LibrejBPM: Implementando Procesos con Software Libre
jBPM: Implementando Procesos con Software Libre
 
Skipfish
SkipfishSkipfish
Skipfish
 
Desarrollo Agil con Ruby Y Rails
Desarrollo Agil con Ruby Y RailsDesarrollo Agil con Ruby Y Rails
Desarrollo Agil con Ruby Y Rails
 
¿Por qué usar frameworks javascript?
¿Por qué usar frameworks javascript?¿Por qué usar frameworks javascript?
¿Por qué usar frameworks javascript?
 
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019
 
Presentacion Javascript
Presentacion JavascriptPresentacion Javascript
Presentacion Javascript
 

Similar to Vaadin y Grails Barcamp 2013

Grails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - SistemasGrails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - SistemasCarlos Camacho
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoManuel Carrasco Moñino
 
Grails y EC2 - De cero a multinacional
Grails y EC2 - De cero a multinacionalGrails y EC2 - De cero a multinacional
Grails y EC2 - De cero a multinacionalGailen Tecnologías
 
Grails and Continuous delivery
Grails and Continuous deliveryGrails and Continuous delivery
Grails and Continuous deliveryInfo ArtdeCode
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Javapbcanessa
 
1. Arquitecturas y Herramientas de Programación
1. Arquitecturas y Herramientas de Programación1. Arquitecturas y Herramientas de Programación
1. Arquitecturas y Herramientas de ProgramaciónLaura Folgado Galache
 
Características Java
Características JavaCaracterísticas Java
Características JavaIsabel Gómez
 
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptxLo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptxSergio Antonio Ochoa Martinez
 
Web framework ligeros y micros en java barcamp 2014
Web framework ligeros y micros en java   barcamp 2014Web framework ligeros y micros en java   barcamp 2014
Web framework ligeros y micros en java barcamp 2014Carlos Camacho
 
GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29Jorge Hidalgo
 
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015 Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015 César Hernández
 
My programming language 04 05-2014
My programming language 04 05-2014My programming language 04 05-2014
My programming language 04 05-2014Neptuno Networks
 
Introducción a java EE 7
Introducción a java EE 7Introducción a java EE 7
Introducción a java EE 7Carlos Camacho
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-webolguisf
 

Similar to Vaadin y Grails Barcamp 2013 (20)

Grails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - SistemasGrails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - Sistemas
 
Gwt I - entendiendo gwt
Gwt I - entendiendo gwtGwt I - entendiendo gwt
Gwt I - entendiendo gwt
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrasco
 
Grails y EC2 - De cero a multinacional
Grails y EC2 - De cero a multinacionalGrails y EC2 - De cero a multinacional
Grails y EC2 - De cero a multinacional
 
Grails and Continuous delivery
Grails and Continuous deliveryGrails and Continuous delivery
Grails and Continuous delivery
 
Lenguaje java
Lenguaje javaLenguaje java
Lenguaje java
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
1. Arquitecturas y Herramientas de Programación
1. Arquitecturas y Herramientas de Programación1. Arquitecturas y Herramientas de Programación
1. Arquitecturas y Herramientas de Programación
 
Características Java
Características JavaCaracterísticas Java
Características Java
 
IDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizadosIDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizados
 
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptxLo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
 
Web framework ligeros y micros en java barcamp 2014
Web framework ligeros y micros en java   barcamp 2014Web framework ligeros y micros en java   barcamp 2014
Web framework ligeros y micros en java barcamp 2014
 
De cero a multinacional con Grails y EC2
De cero a multinacional con Grails y EC2De cero a multinacional con Grails y EC2
De cero a multinacional con Grails y EC2
 
GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29
 
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015 Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
 
My programming language 04 05-2014
My programming language 04 05-2014My programming language 04 05-2014
My programming language 04 05-2014
 
Java 2010: presente, límites y futuro
Java 2010: presente, límites y futuroJava 2010: presente, límites y futuro
Java 2010: presente, límites y futuro
 
Aprendiendo GWT
Aprendiendo GWTAprendiendo GWT
Aprendiendo GWT
 
Introducción a java EE 7
Introducción a java EE 7Introducción a java EE 7
Introducción a java EE 7
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
 

Recently uploaded

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
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 

Recently uploaded (20)

CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 

Vaadin y Grails Barcamp 2013

  • 1. Vaadin on Grails Ing. Carlos Camacho 16/11/2013
  • 2. Presentación (un poco personal) ● Carlos Camacho. – Profesor por vocación. – Pertenezco al lado oscuro de la fuerza (Dark Side). – Aldea de la Hoja (Konoha) – Evangelista de Java. – Apasionado de Linux. – Nacido en la era Nintendo. Amante de los RPG (Chrono Trigger). – Rock, Merengue, Bachata, Balada, Típico, Salsa, Son, Dembow, Reggaeton. (Pirata)
  • 3. Presentación (un poco más serio) ● Carlos Camacho. – Ingeniero Telemático. – Magíster Tecnología Educativa. – Profesor Departamento de Sistema, PUCMM. – Más de 6 años de experiencia desarrollo de sistemas en tecnología Java (JSE y JEE). – 3 años de implementación en sistemas basados en Grails. – Coordinador de Sistemas, Reefer Services, S.A.S. – Fundación Código Libre Santiago - Miembro Fundador. – Presidente AvatharTech.
  • 4. Presentación (un poco más serio) ● Algunas Empresas: – Cementos Cibao. – Edenorte. – Reefer Services. – Marítima Dominicana. – StoneWood. – Geocom. – PyC Servicios – NewSoft. – NewtonSoft
  • 5. Presentación (un poco más serio) ● Algunos API, Frameworks, Motores :
  • 6. Objetivos ● Introducción a Vaadin. ● Integración Vaadin con Grails. ● Demostración.
  • 7. Desarrollo Web - Retos ● ● ● ● ● Todas las aplicaciones están ambiente Desktop deben / están pasando a la web. Los componentes actuales HTML no están implementados para dar una experiencia similar a las aplicaciones Desktop. Convergen muchas tecnologías diferentes (JavaScript, Server Side, XML, JSON, HTML, CSS, AJAX, Reverse AJAX, entre otras) Diseños vistosos ameritan contar con un recurso con las habilidades y conocimiento de Diseñador Web. Del Desktop a la Web y al Mobile. :S
  • 8.
  • 9. ¿Qué es Vaadin? ● Es un framework de aplicaciones Web RIA (Rich Internet Application) del lado del servidor, cuyo objetivo es desarrollar aplicaciones con un comportamiento en funcionalidad y fluidez a las aplicaciones de escritorios. ● Basado en componentes. ● Lenguaje Java, soportando Groovy y Scala. ● ● Integra GWT (Google Web Toolkit) como librería de renderizado. Está enfocado para trabajar en la vista UI (User Interface).
  • 10. Características ● ● ● ● Implementa componentes necesarios para una experiencia satisfactoria por el usuario. Componentes basados en los estándares de la Web (HTML 5). El código que implementa la regla de negocio corre en el servidor, dando seguridad a nuestra aplicación. Los componentes trabajan con todos los navegadores modernos para desktop y dispositivos portátiles, sin necesidad de plugin. ● Los componentes son modulares. ● Libertad para integrar con GWT, Javacript y HTML 5.
  • 11. Características ● Soporte para Servlets y Portlets. ● Disponible cerca de 355 add-ons ● ● ● ● 110,000 programadores repartidos en 6,500 ciudades. Un crecimiento inter-anual de 93%. Licencia Open Source basada en Apache, con soporte comercial. Más de 10 años de historia y proyectos implementados sobre el framework. Fuente: https://vaadin.com/home#peace
  • 12. Ventajas ● ● ● ● ● Programación en Java o lenguajes basados en la JVM (Groovy o Scala). No necesitamos programar en JavaScritp. Esquema de trabajo igual a la programación Desktop. Swing o SWT. Uso de las técnica AJAX de manera automática. La complejidad de la vista se simplifica para el desarrollador, enfocando su tiempo a la lógica de negocio.
  • 14. Entorno de Desarrollos ● Independiente de IDE. ● Plugins existente para: – – Eclipse. – ● Netbeans. Intellij IDEA. Editor visual en Eclipse.
  • 17. Comparación otros framework Fuente: https://vaadin.com/comparison
  • 18. ¿Quién lo usa? Fuente: https://vaadin.com/who-is-using-vaadin
  • 19. ¡Vamos al Código! ● Instructivos: – – ● Hola Mundo :-D → Código | Corrida Calculadora → Código | Corrida Los complejos: – Addressbook → Código | Corrida – VaadinTunes - > Corrida
  • 21. Características del Framework ● ● ● ● Corre sobre una maquina virtual de Java. Integración completa con Java. Implementa la pila completa (Full-stack) Java EE (Java Platform, Enterprise Edition). Basado en el lenguaje dinámico (Groovy) y tecnología Java (Spring y Hibernate). Proporciona: – – Incluye servidor web, base de datos, gestión dependencia y recarga automática sobre los cambios. – ● Desarrollo orientado a pruebas. Gran biblioteca de plugins Filosofía: – – ● Convención sobre Configuración (CoC, siglas en Ingles). No lo repitas (DRY, Don't Repeat Yourself). Inspirado en frameworks como Ruby on Rails y Django
  • 22. Puntos fuertes - Grails ● Excelente e intuitivo manejo del ORM. ● Manejo de transacciones utilizando los Services. ● Soporte multi-idioma. ● Inyección de dependencia. ● Más 700 plugins para extender funcionalidad.
  • 24. Grails SDK ● ● Similar al JDK (Java Developer Kit), contiene las librerías, scripts y clases que componen el framework de Grails, permitiendo desarrollar bajo dicho ambiente. Está disponible en el site oficial: http://grails.org/download
  • 25. IDE – Integrated Development Environment ● ● No es imprescindible su uso. Vi, Vim, Emacs o editor de texto simple son validos. ¿Exigente? – Groovy and Grails Tool Suite. (Soportando por Spring, Gratis) – Eclipse con plugins. (Gratis) – Netbeans. (Gratis) – Intellij IDE Ultimate. (Pago, lo vale :-D)
  • 26. ¿Cómo Integrar Vaadin & Grails? ● Utilizar el plugin oficial: http://grails.org/plugin/vaadin ● Modificar el URL Mapping Grails.