• Spring Core Kata

    1. 0. Preparo el Dojo

      1. JDK6

        1. http://java.sun.com/javase/downloads/widget/jdk6.jsp

      2. SpringSource Tool Suite

        1. http://www.springsource.com/products/springsource-tool-suite-download

        2. IDE basado en Eclipse

        3. Integración con Spring

        4. Integración con Maven

        5. Configuración

          1. Window -> Preferences -> Java -> Installed JREs

          2. Configurar ruta de JDK6

      3. Creo el proyecto

        1. File -> New Project -> Maven Project

        2. maven-archetype-quickstart

      4. Trabajo con Maven

        1. Gestiona el proyecto

          1. Maneja el build

          2. Maneja dependencias

          3. Tiene plugins con otras herramientas

        2. pom.xml

        3. http://maven.apache.org

        4. http://mvnrepository.com

      5. User Story

        1. Como ninja deseo poder asesinar a mi objetivo para cumplir mi misión

    2. 1. Programación tradicional

      1. Creo una Mision

        1. método main()

        2. El Ninja debe asesinar a su Victima

        3. Voy creando las clases y métodos conforme los necesito

          1. Mision

          2. Ninja

          3. Victima

          4. Shuriken

      2. El Ninja obtiene y utiliza su Shuriken en cada asesinato

      3. Ahora el Ninja debe aprender a utilizar una Katana

      4. Antes de cambiar de técnicas fijemos un entrenamiento

        1. JUnit para pruebas unitarias

          1. junit junit 4.8.1 test

        2. Un Assert para comprobar el asesinato

        3. No importa la forma, el Ninja debe cumplir su Mision: asesinar

        4. Entrena a tu Ninja todo el tiempo, ejecuta los tests

        5. Si tienes un error corrígelo inmediatamente

    3. 2. Programar contra la interface

      1. El ninja es un experto utilizando cualquier Arma

      2. GOF: Program to an interface, not an implementation

      3. Objetos dependen de interfaces no de implementaciones

      4. Reducir acoplamiento

    4. 3. Inversión de control

      1. El Ninja ya no escoge su Arma

        1. Ya no hace new

        2. Quitamos esa responsabilidad al Ninja

        3. Ya no depende del Arma concreta

        4. Desconoce si usa Shuriken, Katana, Bo, etc

      2. El Ninja permite que le entreguemos el Arma

        1. Inyección de dependencias

          1. Setter injection

          2. Constructor injection

      3. Alguien debe darle el Arma al Ninja

        1. Spring IoC Container

        2. pom.xml

          1. org.springframework spring-context-support 3.0.2.RELEASE

    5. 4. Configuración por XML

      1. Creamos el Spring Bean Configuration

        1. applicationContext.xml

      2. Pasamos la configuración a XML

        1. id

          1. identificador del bean

        2. class

          1. clase que implementa el bean

          2. fully qualified name

        3. property

          1. name

            1. nombre de la propiedad

            2. estándar de JavaBeans

              1. Constructor público sin argumentos

              2. Acceso a propiedades mediante getter/setter

          2. ref

            1. inyectando referencias a beans

          3. value

            1. inyectando valores

      3. Observaciones

        1. Más explícita

        2. Comenzar con XML para entender mejor los conceptos

        3. Los beans son singletons por defecto

    6. 5. Configuración por anotaciones

      1. Reduce configuración XML

      2. Agregar el namespace "context"

      3. Component autoscan

        1. context:component-scan

        2. @Component

          1. @Controller

          2. @Service

          3. @Repository

        3. Custom stereotypes

      4. Autowiring

        1. @Autowired

        2. Autowiring por tipo

    7. 6. Sigue entrenando

      1. Siguientes módulos

        1. spring-webmvc

        2. spring-jdbc

        3. spring-aop

      2. Participa en comunidades

        1. http://javahispano.org

        2. http://springhispano.org

        3. http://springperu.org/

      3. Referencia de Spring

        1. http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/

      4. Libros

        1. Expert One-On-One j2Ee Development Without Ejb

        2. Professional Java Development with the Spring Framework

        3. Spring in Action

        4. Pro Spring 2.5

    8. Acerca de

      1. Topic

      2. Topic

  • All Comments ( 0 )

    Spring Core Kata

    Added: 2010-06-10 18:11:55

    From: lshimokawa (Joined 2009-12-01 22:08:05)

    2518 views |0 downloads

    Spring Core Kata

    More From: lshimokawa

    Kanban
    Kanban
    2011-11-12 16:31:26|522 views
    Lean Software Development
    Lean Software Development
    2011-11-09 01:27:21|903 views
    Agile Retrospectives
    Agile Retrospectives
    2011-10-29 01:34:44|27 views
    Scrum
    Scrum
    2011-10-19 20:29:40|550 views
    Agile Estimating and Planning
    Agile Estimating and Planning
    2011-10-18 23:12:09|433 views
    Agile Manifesto
    Agile Manifesto
    2011-10-18 01:08:23|63 views
    SOA Governance
    SOA Governance
    2011-10-06 21:11:38|6 views
    Messaging
    Messaging
    2011-10-04 20:49:55|78 views
    ESB
    ESB
    2011-06-10 00:58:10|84 views
    BPEL
    BPEL
    2011-06-09 20:43:51|71 views
    Design Patterns
    Design Patterns
    2011-06-09 00:30:13|12 views
    REST
    REST
    2011-05-31 05:17:28|63 views
    Web Services
    Web Services
    2011-05-09 22:17:13|111 views
    Service Oriented Architecture
    Service Oriented Architecture
    2011-05-05 23:16:09|571 views
    Sistemas Distribuidos
    Sistemas Distribuidos
    2011-05-05 00:17:34|193 views
    XP: String Calculator Kata
    XP: String Calculator Kata
    2011-04-29 23:42:24|90 views
    Agile Testing
    Agile Testing
    2011-04-29 23:34:44|51 views
    Calidad de Software
    Calidad de Software
    2011-04-29 23:34:12|429 views
    XP: Test Driven Development
    XP: Test Driven Development
    2011-04-29 22:17:41|24 views
    XP: Continuous Integration
    XP: Continuous Integration
    2011-04-29 22:16:59|12 views
    Enseñando ágilmente
    Enseñando ágilmente
    2010-10-05 16:49:57|571 views
    Spring Core
    Spring Core
    2010-09-23 16:11:48|27 views
    Arquitectura Web
    Arquitectura Web
    2010-09-10 21:22:01|180 views
    Struts 2
    Struts 2
    2010-08-18 23:50:33|63 views
    Spring JDBC
    Spring JDBC
    2010-08-11 01:52:17|33 views
    JavaSE: Exception
    JavaSE: Exception
    2010-08-11 01:35:49|24 views
    MVC
    MVC
    2010-08-11 00:39:04|48 views
    Logging
    Logging
    2010-08-05 02:37:21|6 views
    Design Principles
    Design Principles
    2010-07-30 23:36:59|9 views
    Acceptance Test Driven Development
    Acceptance Test Driven Development
    2010-07-30 23:35:04|54 views
    Agile: User Stories
    Agile: User Stories
    2010-07-30 23:33:09|139 views
    Apache Maven
    Apache Maven
    2010-07-30 23:31:47|145 views
    iBatis
    iBatis
    2010-07-30 23:00:20|9 views
    Object Relational Mapping
    Object Relational Mapping
    2010-07-28 00:27:19|30 views
    Aspect Oriented Programming
    Aspect Oriented Programming
    2010-07-09 21:30:41|903 views
    JavaEE: EJB
    JavaEE: EJB
    2010-06-28 14:10:51|36 views
    Extreme Programming
    Extreme Programming
    2010-06-17 20:19:25|2237 views
    Desarrollo para Entorno Web
    Desarrollo para Entorno Web
    2010-06-17 20:19:09|208 views
    JavaSE: JDBC
    JavaSE: JDBC
    2010-06-17 20:00:41|36 views
    JavaEE: Persistencia
    JavaEE: Persistencia
    2010-06-17 19:58:53|30 views
    JavaEE: Session Beans
    JavaEE: Session Beans
    2010-06-17 19:58:37|21 views
    AJAX
    AJAX
    2010-06-17 19:42:19|51 views
    JavaEE: JSP
    JavaEE: JSP
    2010-06-17 19:40:38|36 views
    JavaEE: Servlets
    JavaEE: Servlets
    2010-06-17 19:39:45|49 views
    JavaEE: Arquitectura
    JavaEE: Arquitectura
    2010-06-17 19:37:13|252 views
    JavaEE: Web
    JavaEE: Web
    2010-06-17 19:37:04|9 views
    XP: Simple Design
    XP: Simple Design
    2010-06-12 07:03:51|0 views
    XP: Refactoring
    XP: Refactoring
    2010-06-12 07:03:16|3 views
    XP: Pair Programming
    XP: Pair Programming
    2010-06-12 07:02:57|27 views
    XP: Collective Code Ownership
    XP: Collective Code Ownership
    2010-06-12 07:00:16|727 views
    Spring Core Kata
    Spring Core Kata
    2010-06-10 18:11:55|2518 views
    Domain Driven Design
    Domain Driven Design
    2010-05-19 22:29:33|1623 views