Aventura gráfica para el aprendizaje de programación: "Dante"

-

Documents
138 pages
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description


El presente proyecto trata acerca de la creación y desarrollo de un videojuego completo, del género “Aventura gráfica”, que sirva para aprender y repasar conceptos de programación en Java de forma divertida y entretenida. Este videojuego está enfocado a los estudiantes de primer curso de Programación de cualquier Ingeniería, de modo que sea una gran herramienta educativa que complemente el aprendizaje de la asignatura en las clases y las prácticas. Para llevar a cabo este videojuego, ha sido fundamental apoyarse sobre el temario de la asignatura, por lo que el temario proporcionado por el tutor del proyecto ha sido de gran ayuda para estructurar adecuadamente la historia del juego y lo que se va aprendiendo a lo largo de él. De esta forma, la historia avanza de forma paralela al temario que se esté impartiendo en las clases. De esta forma, el jugador puede repasar conceptos sin necesidad de enfrentarse cara a cara con el compilador, y puede observar la estructura de los programas sin necesidad de escribir una sola línea de código; simplemente necesita elegir las opciones correctas, y el código se le irá mostrando poco a poco. Gracias a esto, se espera que este videojuego ayude a futuras generaciones de nuevos programadores. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
The purpose of the current project is the creation and development of a full Graphic Adventure type videogame that allows learning and reviewing Java programming concepts in a fun way. This videogame is focused on First Grade Programming students of any Engineering school, in a way to be a great educational tool that complements the learning of the subject at classes and practices. For developing this videogame, it has been vital basing on the Programming course topics. For that issue, the topics given by the project tutor were a great help for structuring properly the story of the game and what is been learnt along it. By this approach, the story of the game goes on parallel with the topic that is given at class. Players can review programming concepts without needing of facing to the compiler, and they can watch the structure of the programs without writing any code line. They only need to choose the right options and code will be showing to them step by step. Thank this, it is hoped that this videogame helps future generations of new programmers.
Ingeniería de Telecomunicación

Sujets

Informations

Publié par
Publié le 01 novembre 2010
Nombre de visites sur la page 75
Langue Español
Signaler un problème

Proyecto de Fin de Carrera
Ingeniería de Telecomunicaciones
Universidad Carlos III de Madrid




AVENTURA GRÁFICA PARA EL APRENDIZAJE
DE PROGRAMACIÓN:
“DANTE”



Realizado por: Alberto José Corrales García
Tutor: José Jesús García Rueda
Dpto. de Ingeniería Telemática

Leganés, noviembre de 2010

Aventura gráfica para el aprendizaje de Programación: DANTE

1
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
PROYECTO FIN DE CARRERA


Universidad Carlos III de Madrid

Ingeniería de Telecomunicaciones

Título: Aventura gráfica para el aprendizaje de programación “DANTE”

EL TRIBUNAL
Presidente:
Secretario:
Vocal:


Realizado el acto de defensa y lectura del Proyecto Fin de Carrera el día _____ de
_______________ de __________ en Leganés, en la Escuela Politécnica Superior de la
Universidad Carlos III de Madrid, acuerda otorgarle la CALIFICACIÓN de:
2
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
3
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
Resumen
El presente proyecto trata acerca de la creación y desarrollo de un videojuego
completo, del género “Aventura gráfica”, que sirva para aprender y repasar conceptos
de programación en Java de forma divertida y entretenida. Este videojuego está
enfocado a los estudiantes de primer curso de Programación de cualquier Ingeniería, de
modo que sea una gran herramienta educativa que complemente el aprendizaje de la
asignatura en las clases y las prácticas.
Para llevar a cabo este videojuego, ha sido fundamental apoyarse sobre el
temario de la asignatura, por lo que el temario proporcionado por el tutor del proyecto
ha sido de gran ayuda para estructurar adecuadamente la historia del juego y lo que se
va aprendiendo a lo largo de él. De esta forma, la historia avanza de forma paralela al
temario que se esté impartiendo en las clases. De esta forma, el jugador puede repasar
conceptos sin necesidad de enfrentarse cara a cara con el compilador, y puede observar
la estructura de los programas sin necesidad de escribir una sola línea de código;
simplemente necesita elegir las opciones correctas, y el código se le irá mostrando poco
a poco.
Gracias a esto, se espera que este videojuego ayude a futuras generaciones de
nuevos programadores.
Abstract
The purpose of the current project is the creation and development of a full
Graphic Adventure type videogame that allows learning and reviewing Java
programming concepts in a fun way. This videogame is focused on First Grade
Programming students of any Engineering school, in a way to be a great educational
tool that complements the learning of the subject at classes and practices.
For developing this videogame, it has been vital basing on the Programming
course topics. For that issue, the topics given by the project tutor were a great help for
structuring properly the story of the game and what is been learnt along it. By this
approach, the story of the game goes on parallel with the topic that is given at class.
Players can review programming concepts without needing of facing to the compiler,
and they can watch the structure of the programs without writing any code line. They
only need to choose the right options and code will be showing to them step by step.
Thank this, it is hoped that this videogame helps future generations of new
4
programmers.
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE

5
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
Agradecimientos



A mis padres José y Mª Carmen, mi hermana Estefanía y su novio Javier, mi tía
Emi y mi abuela Carmen, por apoyarme en todo momento y guiarme en todos los
aspectos de la vida, tanto académicos como personales.
A mis compañeros de la universidad y amigos Aurora, Alicia, Carlos, Christian,
Diego, Hris, Javier, Mario, Raquel y tantos otros amigos fuera de la universidad que me
han acompañado a lo largo de la carrera y que sin su compañía no hubiera sido posible
llegar hasta aquí…

A todos vosotros, muchas gracias
6
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE

7
Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
Índice general




Índice de ilustraciones ................................................................................................... 10
Objetivos y motivaciones ............................................................................................... 13
1.1- Educación y videojuegos ........................................................................................... 13
1.2- Motivación ................................................................................................................. 14
1.3- Objetivos .................................................................................................................... 14
1.3-1. Motor del juego .............................................................................................................. 15
1.3-2. Estructuras internas ..................................................................................................... 15
1.3-3. Historia y guión ............................................................................................................. 16
1.3-4. Interfaz gráfica.............................................................................................................. 16
Estado del arte de los videojuegos orientados a la educación ..................................... 19
2.1- Historia de los videojuegos educativos ..................................................................... 19
2.2- Aventuras gráfico-conversacionales ........................................................................ 22
2.2-1. Definición e Historia ..................................................................................................... 22
2.2-2. Ejemplos de utilización práctica de aventuras gráficas y conversacionales
educativas en la actualidad. ......................................................................................................... 29
2.2-3. Herramientas de creación de aventuras gráficas .................................................... 33
2.3- La enseñanza de la programación. .......................................................................... 41
8 2.3-1. Uso de las Tecnologías de la Información y la Comunicación (TIC) en la
enseñanza de la programación. ................................................................................................... 42
2.3-2. Uso de las TIC en el aprendizaje de programación .................................................. 43
2.3-3. ObjectLand ..................................................................................................................... 44

Alberto José Corrales García
Aventura gráfica para el aprendizaje de Programación: DANTE
Desarrollo del proyecto .................................................................................................. 51
3.1- Propuesta de historia de juego. ................................................................................ 51
3.2- Historia de Dante ....................................................................................................... 52
3.3- Planificación del proyecto ......................................................................................... 54
3.4- Diseño e implementación del motor de juego ......................................................... 56
3.4-1. Versión 1.0 ...................................................................................................................... 56
3.4-2. Minijuego de test ........................................................................................................... 58
3.4-3. Versión 1.5 ...................................................................................................................... 60
3.4-4. Versión 2.0 ...................................................................................................................... 63
3.4-5. Versión 2.5 ...................................................................................................................... 69
3.4-6. Capa de persistencia ..................................................................................................... 69
3.5- Arquitectura del sistema de conversaciones de Dante ........................................... 73
3.5-1. Metodología de creación de diálogos ......................................................................... 73
3.5-2. Estructura de los diagramas de conversaciones ...................................................... 75
3.6- “Parsing” de XML ..................................................................................................... 76
3.6-1. SAX (Simple API for XML) ............................................................................................ 76
3.6-2. DOM (Document Object Model) .................................................................................. 77
3.6-3. JDOM (Java Document Object Model) ......................................................................... 77
3.6-4. XOM (XML object model) .............................................................................................. 78
3.7- XMLGen .................................................................................................................... 79
3.7-1. Diseño monolítico VS diseño por etapas independientes ........................................ 79
3.7-2. XMLGen ........................................................................................................................... 80
3.8- Adaptación del temario ............................................................................................. 86
3.8-1. Introducción al argumento del juego: Un descenso a los infiernos ....................... 86
3.8-2. Noveno y Octavo Círculo: Introducción a la Informática. ....................................... 87
3.8-3. Séptimo Círculo: Algorítmica básica. ......................................................................... 88
3.8-4. Sexto Círculo: Acciones elementales ........................................................................... 90
3.8-5. Quinto y Cuarto Círculo: Estructuras de control ...................................................... 92
3.8-6. Tercer y Segundo Círculo: Estructuras básicas de datos ........................................ 94
3.8-7. Primer Círculo: Programación Orientada a Objetos. .............................................. 97
3.8-8. Gran Problema Final: Hell’s Inn .................................................................................. 99
Trabajos futuros .......................................................................................................... 101
4.1- Interfaz gráfica 3D .................................................................................................. 101
4.1-1. Google SketchUp .......................................................................................................... 104
4.1-2. jMonkey Engine ........................................................................................................... 107
4.2- Conclusión de XMLGen ......................................................................................... 108
Conclusiones ................................................................................................................ 111
ANEXO I: PLANOS DEL SOFTWARE Y DIAGRAMA DE CLASES .................... 119
9
ANEXO II: DIAGRAMAS DE FLUJO DE LAS CONVERSACIONES .................. 128
ANEXO III: PRESUPUESTO .................................................................................... 133
Alberto José Corrales García