SlideShare una empresa de Scribd logo
1 de 12
IWT2 Dojo US

                      Kata: Sokoban



www.iwt2.org
formacion@iwt2.org
Objetivos


             • Exponer un timeline.
             • Plantear el problema a
               resolver
             • Definir unas reglas
               básicas de trabajo.




Objetivos
                                        2
Índice


         1. Reglas y
            organización
         2. Kata Sokoban
         3. Puesta en común




Índice
                              3
Reglas y
Organización




               4
Time-Line

          Reglas.
5 min.
                                              Programación II.
                                 40 min.
5 min.    Cata.




                                 20 min.      Presentaciones
40 min.   Programación I.




10min.    Descanso / Reorganización.

                                           Tiempo total: 2 horas.
Reglas y Organización


• Plataforma
  – Cualquiera.
  – Ni siquiera es obligatorio XUnit.
  – Parte de la exposición final.
  – Ordenadores: practica / practica
• Programación en parejas
  – Modelo libre (piloto y co-piloto codificando en
    una máquina).
  – Cambio cada 20 min (un pomodoro).
Reglas y Organización


• TDD
  – Intentar no codificar sin una prueba.
  – Escribir siempre el mínimo código posible para
    que una prueba pase (babysteps).
  – Tomar snapshots.
  – ATDD opcionales.
• Pregunta, pregunta, pregunta
Kata: Sokoban




                8
Cata - Sokoban


                                  Rules
                                  • Only one box can be pushed
                                    at a time.
                                  • A box cannot be pulled.
                                  • The player cannot walk
                                    through boxes or walls.
                                  • The puzzle is solved when all
Glosario:
Almacén, Jugador, Mover             boxes are located at storage
(jugador), Caja, Pared, Casilla     locations.
libre, Casilla de almacenaje

                                                                9
Cata - Sokoban
                          Goals
                          • Cómo representar un almacén.
                          • Determinar movimiento válido o no.
                              – Mueve contra una pared
                              – Mueve contra una casilla.
                              – Mueve contra una caja que no se puede
                                mover
                              – Mueve contra una caja que sí se puede
                                mover.
                          • Modificar el almacén con el resultado
                            de un movimiento válido.
                              – Jugador cambia de posición
                              – Jugador y caja cambian de posición.
                          •   Detectar el fin del juego con éxito.
                          •   Opción de deshacer movimientos
Libertad para priorizar
                          •   Opción de añadir gráficos.
                          •   Cualquier cosa que puedas compartir
                                                                      10
Puesta en común




                  11
Enlaces y referencias


   • Ficheros (2semanas)
     https://consigna.us.es/181718
     IWT2DojoUS

   • Repositorio GitHub:
      https://github.com/javierj/kata-dojous
   • Correo electrónico:
     javierj@us.es




                                           12

Más contenido relacionado

Destacado

Higiene y seguridad en el trabajo
Higiene y seguridad en el trabajoHigiene y seguridad en el trabajo
Higiene y seguridad en el trabajokarenp16
 
Front cover & contents page pp
Front cover & contents page ppFront cover & contents page pp
Front cover & contents page ppSarahKeefe123
 
Ananna Kazi Research Presentation Final
Ananna Kazi Research Presentation FinalAnanna Kazi Research Presentation Final
Ananna Kazi Research Presentation FinalAnanna Kazi
 
Clase el-computador-y-sus-partes
Clase el-computador-y-sus-partesClase el-computador-y-sus-partes
Clase el-computador-y-sus-partesbriseidaHT
 
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)Las Claves del Desarrollo Dirigido por Pruebas (o TDD)
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)Javier_J
 
Central serous retinopathy
Central serous retinopathyCentral serous retinopathy
Central serous retinopathyzameer sadhayo
 
TDD y Python
TDD y PythonTDD y Python
TDD y PythonJavier_J
 

Destacado (11)

Higiene y seguridad en el trabajo
Higiene y seguridad en el trabajoHigiene y seguridad en el trabajo
Higiene y seguridad en el trabajo
 
Front cover & contents page pp
Front cover & contents page ppFront cover & contents page pp
Front cover & contents page pp
 
Ananna Kazi Research Presentation Final
Ananna Kazi Research Presentation FinalAnanna Kazi Research Presentation Final
Ananna Kazi Research Presentation Final
 
Aide menu
Aide menuAide menu
Aide menu
 
Clase el-computador-y-sus-partes
Clase el-computador-y-sus-partesClase el-computador-y-sus-partes
Clase el-computador-y-sus-partes
 
Jogo 1 trilha do átomo
Jogo 1  trilha do átomoJogo 1  trilha do átomo
Jogo 1 trilha do átomo
 
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)Las Claves del Desarrollo Dirigido por Pruebas (o TDD)
Las Claves del Desarrollo Dirigido por Pruebas (o TDD)
 
Music case study #2
Music case study #2Music case study #2
Music case study #2
 
Central serous retinopathy
Central serous retinopathyCentral serous retinopathy
Central serous retinopathy
 
TDD y Python
TDD y PythonTDD y Python
TDD y Python
 
How Fairytales Have Impact On Healing
How Fairytales Have Impact On HealingHow Fairytales Have Impact On Healing
How Fairytales Have Impact On Healing
 

Más de Javier_J

TDD y Python
TDD y PythonTDD y Python
TDD y PythonJavier_J
 
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...Javier_J
 
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosGamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosJavier_J
 
Videojuegos en Javascript con TDD y Jasmine
Videojuegos en Javascript con TDD y JasmineVideojuegos en Javascript con TDD y Jasmine
Videojuegos en Javascript con TDD y JasmineJavier_J
 
Introducción a Pruebas en Android
Introducción a Pruebas en AndroidIntroducción a Pruebas en Android
Introducción a Pruebas en AndroidJavier_J
 
GameUs - Herramientas de Desarrollo de Videojuegos
GameUs - Herramientas de Desarrollo de VideojuegosGameUs - Herramientas de Desarrollo de Videojuegos
GameUs - Herramientas de Desarrollo de VideojuegosJavier_J
 
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012Javier_J
 
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012Javier_J
 
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012Javier_J
 
AdV - Programación para no Programadores
AdV - Programación para no ProgramadoresAdV - Programación para no Programadores
AdV - Programación para no ProgramadoresJavier_J
 
IWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban
IWT2 DojoUs. 05 octubre 2012. Ejercicio: SokobanIWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban
IWT2 DojoUs. 05 octubre 2012. Ejercicio: SokobanJavier_J
 
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012IWT2 Dojo US. Introducción a TDD. 5 octubre 2012
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012Javier_J
 
Introducción a IWT2 Dojo US. 5 noviembre 2.012
Introducción a IWT2 Dojo US. 5 noviembre 2.012Introducción a IWT2 Dojo US. 5 noviembre 2.012
Introducción a IWT2 Dojo US. 5 noviembre 2.012Javier_J
 

Más de Javier_J (13)

TDD y Python
TDD y PythonTDD y Python
TDD y Python
 
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...
Conferencia Agile Spain 2.013 - Programando Juegos Casuales con Desarrollo Di...
 
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y VideojuegosGamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
GamwUS. Desarrollo Diriguido por Pruebas y Videojuegos
 
Videojuegos en Javascript con TDD y Jasmine
Videojuegos en Javascript con TDD y JasmineVideojuegos en Javascript con TDD y Jasmine
Videojuegos en Javascript con TDD y Jasmine
 
Introducción a Pruebas en Android
Introducción a Pruebas en AndroidIntroducción a Pruebas en Android
Introducción a Pruebas en Android
 
GameUs - Herramientas de Desarrollo de Videojuegos
GameUs - Herramientas de Desarrollo de VideojuegosGameUs - Herramientas de Desarrollo de Videojuegos
GameUs - Herramientas de Desarrollo de Videojuegos
 
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012
Kata Tenis Completa Paso a Paso. Python Sevilla 30/11/2012
 
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012
Kata Tenis. Enunciados y soluciones alternativas. Python Sevilla 30/11/2012
 
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012
IWT2 Dojo US. Presentación, próximas actividades y agenda. 9 noviembre 2012
 
AdV - Programación para no Programadores
AdV - Programación para no ProgramadoresAdV - Programación para no Programadores
AdV - Programación para no Programadores
 
IWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban
IWT2 DojoUs. 05 octubre 2012. Ejercicio: SokobanIWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban
IWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban
 
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012IWT2 Dojo US. Introducción a TDD. 5 octubre 2012
IWT2 Dojo US. Introducción a TDD. 5 octubre 2012
 
Introducción a IWT2 Dojo US. 5 noviembre 2.012
Introducción a IWT2 Dojo US. 5 noviembre 2.012Introducción a IWT2 Dojo US. 5 noviembre 2.012
Introducción a IWT2 Dojo US. 5 noviembre 2.012
 

IWT2 DojoUs. 05 octubre 2012. Ejercicio: Sokoban

  • 1. IWT2 Dojo US Kata: Sokoban www.iwt2.org formacion@iwt2.org
  • 2. Objetivos • Exponer un timeline. • Plantear el problema a resolver • Definir unas reglas básicas de trabajo. Objetivos 2
  • 3. Índice 1. Reglas y organización 2. Kata Sokoban 3. Puesta en común Índice 3
  • 5. Time-Line Reglas. 5 min. Programación II. 40 min. 5 min. Cata. 20 min. Presentaciones 40 min. Programación I. 10min. Descanso / Reorganización. Tiempo total: 2 horas.
  • 6. Reglas y Organización • Plataforma – Cualquiera. – Ni siquiera es obligatorio XUnit. – Parte de la exposición final. – Ordenadores: practica / practica • Programación en parejas – Modelo libre (piloto y co-piloto codificando en una máquina). – Cambio cada 20 min (un pomodoro).
  • 7. Reglas y Organización • TDD – Intentar no codificar sin una prueba. – Escribir siempre el mínimo código posible para que una prueba pase (babysteps). – Tomar snapshots. – ATDD opcionales. • Pregunta, pregunta, pregunta
  • 9. Cata - Sokoban Rules • Only one box can be pushed at a time. • A box cannot be pulled. • The player cannot walk through boxes or walls. • The puzzle is solved when all Glosario: Almacén, Jugador, Mover boxes are located at storage (jugador), Caja, Pared, Casilla locations. libre, Casilla de almacenaje 9
  • 10. Cata - Sokoban Goals • Cómo representar un almacén. • Determinar movimiento válido o no. – Mueve contra una pared – Mueve contra una casilla. – Mueve contra una caja que no se puede mover – Mueve contra una caja que sí se puede mover. • Modificar el almacén con el resultado de un movimiento válido. – Jugador cambia de posición – Jugador y caja cambian de posición. • Detectar el fin del juego con éxito. • Opción de deshacer movimientos Libertad para priorizar • Opción de añadir gráficos. • Cualquier cosa que puedas compartir 10
  • 12. Enlaces y referencias • Ficheros (2semanas) https://consigna.us.es/181718 IWT2DojoUS • Repositorio GitHub: https://github.com/javierj/kata-dojous • Correo electrónico: javierj@us.es 12