+ All Categories
Home > Technology > Charla de VolKno en UTN

Charla de VolKno en UTN

Date post: 29-Jun-2015
Category:
Upload: volkno
View: 1,211 times
Download: 2 times
Share this document with a friend
Description:
Presentación del equipo VolKno en la Universidad Tecnológica Argentina el 30 de Septiembre de 2014
Popular Tags:
66
Cómo Montar y Mantener tu Web App a Bajo Costo www.volkno.com.ar VolKnoSocial #VolKnoEnUTN
Transcript
Page 1: Charla de VolKno en UTN

Cómo Montar y Mantener tu Web App a Bajo Costo

www.volkno.com.ar

VolKnoSocial#VolKnoEnUTN

Page 2: Charla de VolKno en UTN

Agenda● ¿Qué es VolKno?● Lean Startup● SPA con AngularJS● API REST con JAX-RS● Back-End: Spring● OpenShift

www.volkno.com.ar

Page 3: Charla de VolKno en UTN

www.volkno.com.ar

Page 4: Charla de VolKno en UTN

● Acomodá tu contenido favorito● Descubrí la información que te gusta

www.volkno.com.ar

VolKno: Voluminous Knowledge

Page 5: Charla de VolKno en UTN

● Traé tus links favoritos● Organizalos en estantes públicos● Leelos, Compartilos, Comentalos

www.volkno.com.ar

Organizá

Page 6: Charla de VolKno en UTN

● Descubrí la información que te gusta● Recibí notificaciones con sugerencias● Explorá los temas destacados

www.volkno.com.ar

Descubrí

Page 7: Charla de VolKno en UTN

www.volkno.com.ar

Accedé desde cualquier lado

Page 8: Charla de VolKno en UTN

www.volkno.com.ar

Page 9: Charla de VolKno en UTN

Start up es una organización de personas diseñada para obtener un nuevo producto o servicio bajo condiciones de extrema incertidumbre

www.volkno.com.ar

Startup

Page 10: Charla de VolKno en UTN

Startup = Experimento

Parar de hacer perder el tiempo a la gente

Producto Mínimo Viable(MVP)

www.volkno.com.ar

Lean

Page 11: Charla de VolKno en UTN

www.volkno.com.ar

¿Qué aprendimos?

Page 12: Charla de VolKno en UTN

www.volkno.com.ar

Validate Learning

Page 13: Charla de VolKno en UTN

www.volkno.com.ar

Medir! Medir! Medir! Medir!

Page 14: Charla de VolKno en UTN

www.volkno.com.ar

¿Cuántas veces puedo pivotar antes de quedarme sin plata?

Pivotar

MVP Ajustar Pivotar o Seguir

Page 15: Charla de VolKno en UTN

● Identificar usuarios● Ver como los distintos usuarios usan el sitio

○ Grabar su comportamiento○ Encuestas anónimas.○ Pedir Feedback

● Juntarse con la comunidad emprendedora○ Contar tu idea a todo el mundo

www.volkno.com.ar

Salir del edificio

Page 16: Charla de VolKno en UTN

The goal of a start up is to figure out the right thing to build -- the thing that customers want

and will pay for -- as quickly as possible.

Eric Ries

www.volkno.com.ar

Page 17: Charla de VolKno en UTN

www.volkno.com.ar

Page 18: Charla de VolKno en UTN

● Mucha atención a UX● Flat Design● Diseños Responsivos y Minimalistas● SPA: Single Page Application● Fuerte Predominio de JavaScript● Frameworks CSS

www.volkno.com.ar

Aplicaciones Web Modernas

Page 19: Charla de VolKno en UTN

● Primera Generación: HTML + CSS○ Aplicaciones Server-Centric○ Poco o casi nada JavaScript

● Segunda Generación: Ajax con jQuery○ Web Apps más Ricas○ Fuerte uso de Ajax y abuso de jQuery

● Tercera Generación: Frameworks JavaScript○ MVC del lado del cliente

www.volkno.com.ar

Evolución en App Webs

Page 20: Charla de VolKno en UTN

www.volkno.com.ar

Arquitectura VolKno

Page 21: Charla de VolKno en UTN

www.volkno.com.ar

Explosión de Frameworks JS

http://todomvc.com/

Page 22: Charla de VolKno en UTN

● Por su diseño modular y escalable● Por su alta adopción● Por su comunidad

www.volkno.com.ar

¿Por qué AngularJS?

Page 23: Charla de VolKno en UTN

● MVC de la década del 10● App guiada por el HTML● Two-Ways POJO Data Binding● Escribir poco código● Directivas para encapsular comportamiento● Casi nada de necesidad de manipular DOM● Servicios, Contextos, Manejo de Eventos● Listo para Unit Testing

www.volkno.com.ar

¿Qué tendrá ese framework?

Page 24: Charla de VolKno en UTN

www.volkno.com.ar

Building Blocks

Page 25: Charla de VolKno en UTN

● AngularJS in 60 Minutes○ Dan Wahlin

● angular.org● Foros, GitHub, StackOverflow● Templates y Generadores

○ angular-seed○ angular-fullstack○ MEAN.js

www.volkno.com.ar

¿Cómo empezar?

Page 26: Charla de VolKno en UTN

www.volkno.com.ar

JAX-RS

API REST

Page 27: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 28: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 29: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 30: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 31: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 32: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 33: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 34: Charla de VolKno en UTN

www.volkno.com.ar

¿Por qué las APIs se están comiendo al mundo?

Page 35: Charla de VolKno en UTN

www.volkno.com.ar

El Club de los Billonarios

Page 36: Charla de VolKno en UTN

www.volkno.com.ar

El Club de los Billonarios¡Según Twitter, el 60% de los tweets viene de Aplicaciones de Terceros!

Page 37: Charla de VolKno en UTN

www.volkno.com.ar

Page 38: Charla de VolKno en UTN

● Bien definidas● Bien documentadas● Proveer Herramientas● Deben funcionar muy bien

● ¡Listas para Usar!

www.volkno.com.ar

Las APIs son Contratos

Page 39: Charla de VolKno en UTN

● Web Services que usan HTTP como protocolo de transporte

● Operaciones más usadas○ GET, POST, PUT, DELETE => CRUD

● URI => Sintaxis para Identificar Recursos

www.volkno.com.ar

REST

Page 40: Charla de VolKno en UTN

● GET http://www.volkno.com.ar/api/webmarks○ Para consultar un listado de Webmarks

● GET /api/webmarks/1735○ Para consultar el webmark 1735

● POST /api/webmarks○ Para guardar un nuevo webmark

● PUT /api/webmarks/1735○ Para modificar el webmark 1735

www.volkno.com.ar

Ejemplo de CRUD de Webmarks

Page 41: Charla de VolKno en UTN

● Es un estándar de Java EE para construir RESTful Web Services (API) usando anotaciones

● Mediante anotaciones expone clases Java en servicios REST

● Nosotros usamos Apache CXF

www.volkno.com.ar

JAX-RS

Page 42: Charla de VolKno en UTN

● @Path● @GET, @POST, @PUT, @DELETE● @Produces, @Consumes

www.volkno.com.ar

Algunas Anotaciones

Page 43: Charla de VolKno en UTN

● @Path● @GET, @POST, @PUT, @DELETE● @Produces, @Consumes

www.volkno.com.ar

Algunas Anotaciones

Page 44: Charla de VolKno en UTN

● @Path● @GET, @POST, @PUT, @DELETE● @Produces, @Consumes

www.volkno.com.ar

Algunas Anotaciones

Page 45: Charla de VolKno en UTN

● La documentación de Apache CXF● Libro de Bill Burke (O’Reilly)

www.volkno.com.ar

¿Cómo empezar?

Page 46: Charla de VolKno en UTN

www.volkno.com.ar

Spring, MyBatis, PostgreSQL

Back-End

Page 47: Charla de VolKno en UTN

● Contenedor de Inversión de Control● Provee Inyección de Dependencia => Ideal

para Servicios● Tiene muchos módulos que sirven para

integrar distintos servicios Java EE y libs● Spring Data, Spring Security, Spring MVC,

Spring Web Flow, etc

www.volkno.com.ar

Spring Framework

Page 48: Charla de VolKno en UTN

www.volkno.com.ar

Page 49: Charla de VolKno en UTN

www.volkno.com.ar

Page 50: Charla de VolKno en UTN

www.volkno.com.ar

Inyección de Dependencia

Page 51: Charla de VolKno en UTN

www.volkno.com.ar

Objeto de Acceso a Datos

Page 52: Charla de VolKno en UTN

www.volkno.com.ar

Pruebas Unitarias con Mockito

Page 53: Charla de VolKno en UTN

www.volkno.com.ar

Pruebas Unitarias con Mockito

Page 54: Charla de VolKno en UTN

www.volkno.com.ar

Pruebas Integración DBUnit

Page 55: Charla de VolKno en UTN

www.volkno.com.ar

Pruebas Integración DBUnit

Page 56: Charla de VolKno en UTN

www.volkno.com.ar

Pruebas Integración DBUnit

Page 57: Charla de VolKno en UTN

www.volkno.com.ar

Page 58: Charla de VolKno en UTN

● PaaS de Red Hat● Cartridges out-of-the-box

○ JBoss EAP, Wildfly, Tomcat, PHP, Zend, Python○ Ruby, Node.js, Vert.x, Perl, MongoDB, MySQL○ PostgreSQL, Jenkins, SwitchYard, Cron, Fuse

● Cartridges DIY● Plan gratuito: 3 Gears

www.volkno.com.ar

OpenShift

Page 59: Charla de VolKno en UTN

www.volkno.com.ar

Computación en la Nube

Page 60: Charla de VolKno en UTN

www.volkno.com.ar

Computación en la Nube

Page 61: Charla de VolKno en UTN

www.volkno.com.ar

Page 62: Charla de VolKno en UTN

www.volkno.com.ar

RHC: Command Line Tools● rhc app create <app-name> <cartridge>● rhc cartridge add <cartridge> -a <app-

name>● rhc app restart -a <app-name>● rhc app ssh -a <app-name>● rhc tail -a <app-name>● rhc app show --gears -a <app-name>● rhc app show -a <app-name>

Page 63: Charla de VolKno en UTN

www.volkno.com.ar

env: Variables de Entorno● OPENSHIFT_GEAR_MEMORY_MB● OPENSHIFT_DATA_DIR● OPENSHIFT_LOG_DIR● OPENSHIFT_POSTGRESQL_DB_HOST● OPENSHIFT_POSTGRESQL_DB_USERNAME● OPENSHIFT_PRIMARY_CARTRIDGE_DIR● OPENSHIFT_HAPROXY_PORT● OPENSHIFT_JBOSSEWS_JPDA_PORT● OPENSHIFT_HOMEDIR

Page 64: Charla de VolKno en UTN

● Getting Started with OpenShift

www.volkno.com.ar

¿Cómo empezar?

Page 65: Charla de VolKno en UTN

http://www.volkno.com.ar/widget.html?shelf=1378

www.volkno.com.ar

Bibliografía

Page 66: Charla de VolKno en UTN

www.volkno.com.ar


Recommended