Loading content…
Loading…
Transcript

¿Pero qué es Spring?

Java Open Source Application Framework

HISTORIA

  • 2002: Expert One-on-One J2EE Design & Development
  • 2003: Nace como proyecto Open Source
  • 2004: Spring 1.0
  • 2006: Spring 2.0
  • 2007: Spring 2.5
  • 2008: Nace SpringSource
  • 2009: VMWare adquiere SpringSource, Spring 3.0

FILOSOFÍA

  • Programación basada en POJOs
  • Ligero
  • Facilita las buenas prácticas de programación
  • Modelo de programación consistente
  • Facilita las pruebas
  • No invasivo
  • No reinventa la rueda

MÓDULOS

TEMA

PROBLEMA

y como empezamos a desarrollarlo?

DESARROLLO DEL PROYECTO

¿Y QUE HERRAMIENTAS SE USARA PARA IMPLEMENTAR TODO ESTO?

core

  • Configuración del ApplicationContext
  • Inversión de control
  • Inyección de dependencias
  • Setter injection

No nos llames, nosotros te llamamos

DAO

Clases de Dominio

Base de Datos

MVC

PROTOTIPO

IMPLEMENTACION

security

testing

¿POR QUE?

¿COMO?

DEPLOY

CloudFoundry

  • Producimos menos bugs
  • Encontramos los bugs antes
  • Evitamos regresiones
  • Documentamos el codigo
  • Promovemos un buen diseño
  • Integramos mas rápido

spring

En esta ocasion, se resolvera un problema desarrollando un pequeno proyecto

usando librerias y frameworks integrandolo con Spring y todo desde cero

Implementación de la parte cliente

Desarrollo de los servicios

Creación de las clases de dominio

Análisis y creación de las clases con sus respectivos atributos y relaciones entre ellas

Desarrollo e implementación del

prototipo (HTML) para que consuma los servicios

Creación de las interfaces y las implementaciones

que proveerá los servicios a ser consumidos

  • Tests Unitarios: No dependen de Spring
  • Tests Integrales: Usando Spring TestContext Framework
  • Mock Objects Frameworks: Mockito
  • Sean conscientes del ROI
  • ¿Encontraron un bug? Escriban un test antes de corregirlo

El conocido Chef Gaston Acurio ya no sabe donde guardar todas

sus recetas y sus libros estan repletos de garabatos y de manchas de salsa.

Necesita guardar sus recetas digitalmente y que puedan ser accesibles desde cualquier parte y tambien accesible para sus aprendices.

ITERACION

USER STORY 3

Desarrollo de la capa de conexión a base de datos

Testing

DEPLOY

Desarrollo de la capa de seguridad

Como Chef de Alta Cocina Peruana

deseo identificarme mediante usuario y contraseña, de modo que pueda realizar las acciones restringidas sólo a mi rol.

En esta etapa se creará la capa DAO para la conexión

a base de datos, se crearán las tablas y se mapeará

a las clases de dominio

Publicar nuestro aplicación

y a disfrutar de las recetas!

Se crearán los roles y permisos

para el uso de los servicios basado

en credenciales.

Creación de los test unitarios e integrales para probar que nuestra aplicación cumple con los requesitos basicos

USER STORY 1

USER STORY 2

Como Chef de Alta Cocina Peruana quiero

poder registrar y editar mis recetas,

de modo que pueda compartir mi

conocimiento culinario con mis pupilos.

Como Aprendiz de Chef quiero poder consultar

las recetas publicadas, de modo que pueda practicar y mejorar constantemente mi arte.

USER STORY 4

  • SpringSource Tool Suite
  • SpringSource tc Server
  • SpringSource CloudFoundry
  • Maven
  • JUnit
  • Subversion
  • HyperSQL DataBase

Como Chef de Alta Cocina Peruana deseo que la opción de editar mis recetas esté restringida, de modo que solamente mi rol pueda realizar esta acción.

SpringCommunityDay

LIMA 2009

Grupo Spring Perú

http://springperu.org

Spring Perú es el grupo de usuarios de Spring Framework en el Perú. Se formó el 25 de Noviembre del 2008 por un grupo profesionales interesados en difundir nuevas tecnologías relacionadas Java.

El objetivo del grupo es difundir el uso de Spring Framework en el Perú, fomentando su aplicación, enseñanza y brindando apoyo a los que recién comienzan a través de la lista de interés.

ORM: Hibernate

JDBC

Hibernate

Sin Spring JDBC

  • Recordando vieeejos tiempos :

Con Spring JDBC

  • El paquete DAO provee una capa de abstracción JDBC que elimina la necesidad de hacer la tediosa codificación JDBC (try catchs, statements, etc).
  • Además proporciona la gestión de transacciones de forma declarativa.

SPRING

Spring - Hibernate en el proyecto

Con HibernateDaoSupport

  • El paquete ORM provee soporte para trabajar con los ORMs mas populares como: Hibernate, iBATIS, JDO, OJB and TopLink.

ESTO ES SPRING

spring

Características

Clara separación de roles.

Sencilla pero consistente configuración de las clases tanto del framework como aplicación como JavaBeans.

Adaptabilidad, no intrusión y flexibilidad.

Código de negocio reutilizable.

Binding y validación personalizable.

Manejador de mapeo y vistas personalizable.

MUCHAS GRACIAS POR SU ATENCIÓN

ARQUITECTURA DEL PROYECTO

¿PREGUNTAS? ¿COMENTARIOS?

Y NO TE OLVIDES DE VISITAR WWW.SPRINGPERU.ORG PARA MAS INFORMACIÓN