obje

Páginas: 11 (2650 palabras) Publicado: 12 de marzo de 2014












IMPLEMENTACIÓN DEL JUEGO DEL AJEDREZ









UNIVERSIDAD DE LAS ISLAS BALEARES
TECNOLOGÍA DE LA PROGRAMACIÓN
2006 / 2007









Alumno: Ligia Tatiana González Leyva {X4741315A}
Índice de contenido
1.Introducción 3
2.Simplificaciones 3
3.Estructuración de la aplicación 3
3.1.Ajedrez 4
3.2.Tablero 4
3.3.Jugador 4
3.4.Jugador Humano 53.5.Jugador Máquina 5
3.6.Pieza 6
3.7.Peón, Torre, Caballo, Alfíl, Reina, Rey 6
3.8.Constantes 6
3.9.Movimiento 6
4.Ejecución de la aplicación 6
5.Código Fuente 6
5.1.Ajedrez.java 6
5.2.Alfil.java 8
5.3.Caballo.java 10
5.4.Constantes.java 12
5.5.Jugador.java 12
5.6.JugadorHumano.java 16
5.7.JugadorMaquina.java 18
5.8.Movimiento.java 21
5.9.Peon.java 22
5.10.Pieza.java 24
5.11.Reina.java27
5.12.Rey.java 28
5.13.Tablero.java 30
5.14.Torre.java 35

1. Introducción

La aplicación a desarrollar consiste en crear un programa en Java que simule el juego del ajedrez; en concreto deberá permitir desarrollar una partida humano vs. computadora.

2. Simplificaciones
Durante el desarrollo del ajedrez y debido principalmente a la cantidad de aspectos que puede abarcar unaaplicación de ajedrez real y también a que ha sido desarrollada por una sola persona se han tomado una serie de simplificaciones que no afectan, sin embargo, al objetivo central de la práctica que consiste en la aplicación de técnicas de backtracking para solventar las jugadas a realizar por parte de la computadora. Sin más tales simplificaciones se listan a continuación:
En cuánto al propio juego ensí:
No se han considerado las jugadas de jaque y jaque mate. La partida acaba cuándo uno de los jugadores consigue “matar” al rey del oponente (regla no válida en la realidad pero sí aproximada).
Un jugador no puede solicitar tablas. Únicamente se produce una situación de tablas cuándo el usuario no puede realizar ningún movimiento.
En cuánto al jugador humano:
Siempre jugará con las piezas decolor blanco.
En cuánto al jugador máquina:
Siempre jugará con las piezas de color negro.
Su inteligencia vendrá limitada por el proceso que se explicará más adelante.
3. Estructuración de la aplicación
A continuación se muestra un modelo con las clases que contiene la aplicación:


3.1. Ajedrez
Ésta es la clase principal de la aplicación y será la que sea invocada para iniciar laaplicación.
Es la responsable de la interfaz gráfica de usuario y por ello es una subclase de Jframe.
Contiene los siguientes métodos importantes:
Main: punto de entrada de la aplicación crea un nuevo objeto de tipo Ajedrez.
Constructor: fija los atributos de la ventana creada creando todos los elementos de juego y controlando el propio desarrollo del juego.

3.2. Tablero
Esta clase controlala situación real de la partida matiendo constancia de la situación de las fichas de cada uno de los jugadores.
Para ello dispone de dos arrays uno de las propias piezas y uno de Casillas, siendo Casilla una clase que hereda de Jpanel y que contiene un Jlabel; su función principal es poder dibujar un icono de la ficha correspondiente en la pantalla.
Volviendo a la clase tablero tenemos lossiguientes métodos principales:
add: añade una ficha al tablero.
Get: devuelve que ficha se halla en una determinada fila y columna.
MostrarGUI: muestra gráficamente la situación actual del tablero.
GenerarMovimientos: genera los movimientos posibles para un color de juego determinado (blanco, negro).
ValorTablero: retorna la valoración actual de un tablero para un color determinado teniendoen cuenta que las fichas propias suman mientras que las rivales restan. Cada ficha tiene un valor asignado en función de su importancia. Un valor de 0 indicará una situación de empate.

3.3. Jugador
Clase base abstracta de la que heredarán los dos tipos de jugadores existentes en la aplicación: humanos y máquina.
Cómo métodos no abstractos importantes destacan:
realizarJugada: invocable...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • El Obje
  • ctivinco grandes obje
  • Obje. investigacion cientifica
  • Objeos Contenedores JFrame JDialog
  • Categorias De Objeos De Estudio
  • Tecno Trabajo Intro Obje Conclu

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS