Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

31
Desarrollo de videojuegos dirigido por pruebas Javier Gutiérrez

description

Transparencias de la charla: Desarrollo de videojuegos dirigido por pruebas, dónde vimos cómo empezar a aplicar TDD para el desarrollo de videojuegos. Madrid, 18/10/2013

Transcript of Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Page 1: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Desarrollo de

videojuegos dirigido

por pruebas

Javier Gutiérrez

Page 2: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

¿Quién soy yo?

Page 3: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Índice

Page 4: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Todos nos equivocamos

“No fracasé, sólo

descubrí 999 maneras de

como no hacer una

bombilla.”

Page 5: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

• Sin pruebas

• No veía fácilmente el diseño

• Fallaba por sorpresa sin saber por qué

• Cambiaba por cambiar.

• Apechugar con las malas decisiones.

• No avanzaba.

• Presionado por fecha límite.

• Me sentía mal.

• Un cuadro típico de necesito TDD.

¿Por qué TDD?

Page 6: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

¿Por qué TDD?

NO

Page 7: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

¿Qué es TDD?

Page 8: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

¿Qué es TDD?

Page 9: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

1. You are not allowed to write any

production code unless it is to

make a failing unit test pass.

2. You are not allowed to write any

more of a unit test than is

sufficient to fail; and compilation

failures are failures.

3. You are not allowed to write any

more production code than is

sufficient to pass the one failing

unit test.

¿Qué es TDD?

Page 10: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

NO

¿Quién usa TDD?

Page 11: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

¿Qué sabemos de TDD?

Every unit test you write is not production

code solving someone's problem.

Page 12: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Aspectos clave de TDD y videojuegos

Page 13: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Single Responsibility Principle

A CLASS SHOULD HAVE ONLY

ONE REASON TO CHANGE.

Page 14: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Single Responsibility Principle

Page 15: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Single Responsibility Principle

Page 16: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Destapa tu juego

Page 17: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Destapa tu juego

Page 18: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Gema:

Tiene posición X, Y

Está visible por defecto

Puede volverse invisible

Destapa tu juego

Page 19: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Combinación:

• 4 Valores

• En un rango de [1-

4]

• Valor correcto =

intenta el siguiente.

• Valor incorrecto =

vuelve a empezar

Destapa tu juego

Page 20: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Combinación:

• 4 Valores

• En un rango de [1-

4]

• Valor correcto =

intenta el siguiente.

• Valor incorrecto =

vuelve a empezar

Si destapamos el

código

Destapa tu juego

Page 21: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Haz visible lo invisible

Page 22: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Haz visible lo invisible

Page 23: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Haz visible lo invisible

Page 24: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

El mundo real

Page 25: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

El mundo real

Page 26: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

El mundo real

Page 27: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

El mundo real

Medias

Page 28: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

• Falsa sensación de velocidad.

• Falsa sensación de seguridad.

• No tener claro qué probar

• Set-up complejo.

• Módulos “Dios”

¿Por qué pierdo la fe?

Conclusiones

Page 29: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Todo por hacer

Conclusiones

Page 30: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

Onikami

Agradecimientos

Page 31: Codemotion 2013 - Desarrollo de videojuegos dirigido por pruebas

• Blog: http://iwt2-javierj.tumblr.com/

• Libro:

http://www.iwt2.org/web/opencms/IWT2/comunid

ad/LibroTDD/?locale=es

• GameUS: http://www.gameus.es/

• IWT2 DojoUS:

http://www.iwt2.org/web/opencms/IWT2/comunid

ad/dojous/?locale=es

• Twitter: @IWT2_Javier/ @GameUsSev /

@TDDPractico

Fin

Enlaces