Your SlideShare is downloading. ×
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Spring
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Spring

4,307

Published on

Presentacion de la 2a. Reunion de la comunidad Java de Qro., con el tema SpringFramework

Presentacion de la 2a. Reunion de la comunidad Java de Qro., con el tema SpringFramework

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,307
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
175
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 2da. Reunión Java Querétaro Introducción a SpringFramework
  • 2. Acerca de mi...(neodevelop – José Juan Reyes Z.) La referencia total: SpringHispano.org y grails.org.mx
  • 3. Agenda
    • Antecedentes
    • ¿Qué es Spring?, ¿Por qué Spring?
    • Componentes básicos de Spring
    • Características
    • Contenedor de IoC
      • Inversion of Control
      • Ventajas
      • Valores
    • IoC y DI
    • Beneficios del DI
    • Contenedor de Beans de Spring
    • ¿Qué más rodea a Spring?
    • Resumen
  • 4. Antecedentes
    • JEE es complicado
    • Métodos ágiles
    • Proceso de desarrollo integrado
    • Diseño OO basado en negocio
    • Ingeniería de software
  • 5. ¿Qué es SpringFramework?
      • “ Spring es una tecnología dedicada para permitir construir aplicaciones usando POJO’s…”, Rod Johnson – The Server Side
  • 6. SpringFramework Spring es un poderoso framework de aplicaciones que resuelve muchos problemas comunes en el desarrollo de aplicaciones Java (SDK y EE).
  • 7. Continuación…
    • Spring a menudo es descrito como un framework “ligero” para construir aplicaciones Java.
    • No esta enfocado a una parte especifica de una aplicación. (i.e. Struts, JSF, Hibernate) Spring es “ligero” porque para usarlo en una aplicación no hay que hacer muchos cambios, en ocasiones ninguno.
    • Esto al menos para usar el “Core” de Spring.
    • Impacto mínimo. Principio de la filosofía de Spring.
  • 8. ¿Por qué Spring?
    • Porque reduce la complejidad de desarrollo JEE
      • Simplificar sin sacrificar poder.
      • Facilitar mejores practicas, que de otra manera son difíciles seguir.
    • Porque nace de la experiencia práctica de muchos desarrolladores en todo el mundo.
  • 9. ¿Por qué Spring?
    • Desarrollar aplicaciones usando POJO’s
      • Spring ofrece capacidades avanzadas de configuración que permiten escalar a una complejidad del mundo real.
      • Permite aplicar servicios empresariales a los POJO’s, de forma declarativa y no invasiva
  • 10.  
  • 11. Componentes de SpringFramework
  • 12. Características ¿Por qué me cambio la vida al desarrollar software?
  • 13. AOP Facilita la implementación de soluciones a problemas recurrentes, incluso en contextos diferentes
  • 14. Acceso a datos Facilita el uso con JDBC, y se integra con: Hibernate, iBatis, JPA
  • 15. Administracción de transacciones
  • 16. Integración y simplificación con JEE
    • EJB
    • Session Bean
      • SLSB
      • SFSB
    • JMS
    • JNDI
    • JMX
    • Java Mail
  • 17. Spring en Web SpringMVC, integración con diferentes tecnologías de vista e incluso con otros frameworks MVC como Struts 1.x,2.x, WebWork, JSF
  • 18. Calendarización de procesos Quartz
  • 19. Manejo de excepciones simplificado Evita el tedioso manejo de excepciones Cátedra de manejo de excepiones
  • 20. Escenarios de Uso
  • 21. En todas las capas
  • 22. Usando Frameworks de 3ros.
  • 23. En remoting
  • 24. Con EJB’s
  • 25. Contenedor de IoC
  • 26. Inversion of Control
    • Técnica que externaliza la creación y manejo de las dependencias de componentes
    • IoC también es conocido como Dependency Injection
    • La implementación de DI de Spring está basada en:
      • JavaBeans
      • Interfaces
  • 27. Inversion of Control
    • Hablando de DI, Spring actúa más como un contenedor que como un Framework.
      • Nos provee instancias de clases de nuestra aplicación con todas las dependencias que necesitan.
      • Y su principio es simple: JavaBeans
  • 28. Ventajas de DI
    • Mucho menos código de plomería…:D
      • El contenedor de Spring hace la tarea por nosotros
    • Externaliza las dependencias
      • No es necesario recompilar la app para modificar las dependencias
    • Administración centralizada de las dependencias
  • 29. Ventajas de DI
    • Mejora la prueba de software(TDD)
      • Facilita intercambiar implementaciones
      • Uso de mocks
      • Ejecución de pruebas eficaz
      • Clases de prueba que apoyan el soporte de diseño
    • Mejor diseño de aplicaciones
      • Interface Driven Design
  • 30. Valores de Spring
    • El nivel de abstracción manejado es bastante alto y sólido.
    • Lo que permite la adopción del framework como un modelo tecnológico y de negocio.
    • Evita los enfoques ineficientes de JEE
    • Las lista de valores es muy larga, mejor vayamos al aspecto más pragmatico…
  • 31. IoC y DI
    • DI es un mecanismo para proveer dependencias de componentes
    • Maneja esas dependencias en su ciclo de vida
    • Un componente que requiere esa dependencia es llamado un objeto dependiente
  • 32. Ejemplos de DI
    • Por constructor
    • Por métodos mutadores(set)
    • Por anotaciones
  • 33. Beneficios de DI
    • Reducir el acoplamiento
    • Ya no más Patrón de Diseño Factory en todas sus estirpes
    • Abstracción total del ensamblado de la aplicación
  • 34. Contenedor de Spring
    • En Spring, los objetos que forman la columna vertebral de una aplicación son manejados por el contenedor de IoC
    • En Spring, a esos objetos se les conoce como beans
    • Un bean es cualquier objeto simple, que es instanciado y administrado por el IoC
    • La definición de los beans puede ser por: configuración XML y por anotaciones
    • El contenedor es representado por: org.springframework.beans.factory.BeanFactory
  • 35. Contenedor de Beans de Spring
    • Existen varias implementacions del BeanFactory, por ejemplo:
      • org.springframework.beans.factory.XmlBeanFactory
      • Esta permite expresar a los objetos de una app y sus relaciones basados en archivos XML
  • 36. ¿Qué más rodea a Spring?
    • Spring WebFlow
    • Spring WebServices
    • Spring Security
    • SpringSource dm Server
    • Spring Batch
    • Spring LDAP
    • Spring IDE
    • Entre otros…
  • 37. ¿Qué más rodea a Spring?
    • Aplicaciones empresariales
      • Integración con sistemas legados
      • SOA
      • Acceso a múltiples recursos transccionales
      • Control transaccional elemental
  • 38. ¿Qué más rodea a Spring?
    • Servidores de aplicaciones
      • Es independiente del servidor de Aplicaciones
      • Certificado para Weblogic, Websphere
      • Uso comprobado en JBoss, Glassfish
  • 39. Resumen
    • Spring es un framework de infraestructura para crear excelentes arquitecturas, incluso otros frameworks…
    • Spring te ayuda a reducir y en algunos casos eliminar el código de plomería
    • Spring no sustituye a JEE, ni intenta hacerlo
    • Spring es OpenSource, y por eso es exitoso
    • Spring usa licenciamiento Apache 2.0
  • 40. Mas referencias…
    • SpringHispano.org
    • SpringFramework.org
    • Twitter de SpringHispano
    • Recursos en delicious.com
      • neodevelop
  • 41. Gracias Java Querétaro Sigamos haciendo comunidad !!! :D

×