Juego desarrollado en Java utilizando la plataforma JavaFX
“Tic Tac Toe”
Subgrupo: 1
Nombre de los Autores:
Oswaldo Andres Jimenez Molina
Daniel García Montoya
Gerson Julián Bernal Alfonso
Samuel Marulanda
Oscar Alejando Ortiz Trujillo
Institución: Politécnico Grancolombiano
Materia: Paradigmas de Programación
Entrega 1 Semana 3
Profesor: Ricardo David Camargo Lemos
Fecha 5 de diciembre 2023
Contenido
Introducción................................................................................................................................................3
Historia........................................................................................................................................................4
Desarrollo...................................................................................................................................................5
Desarrollo Semana 7 y semana 8...........................................................................................................6
Pantallazos evidencia Java......................................................................................................................8
Diagrama de clases.................................................................................................................................11
Conclusión................................................................................................................................................12
Bibliografía................................................................................................................................................13
Introducción.
Java es un lenguaje sencillo y orientado a objetos, que permite el desarrollo de
aplicaciones en múltiples áreas, como seguridad, animación, acceso a bases de datos,
aplicaciones cliente-servidor, interfaces gráficas, páginas Web interactivas y desarrollo
de aplicaciones móviles, o para creación de juegos interactivos.
Con esto buscamos afianzar la programación orientada a objetos ya que disminuye los
errores y promociona la reutilización del código, además del IDE Eclipse que es una
plataforma de software compuesto por un conjunto de herramientas de programación
de código abierto multiplataforma para desarrollar el proyecto aplicaciones cliente.
En este caso vamos a desarrollar un juego interactivo que nos permita desarrollar
nuestro curso de paradigmas de programación, por lo tanto, nos enfocamos en el
dominio de la programación orientada a objetos y el desarrollo de un juego utilizando
programación orientada a objetos teniendo en cuenta librería gráfica para JAVA y el IDE
ECLIPSE para desarrollar nuestro juego.
Historia
El juego que conocemos ahora como Tic Tac Toe tomó una forma anterior en la Antigua
Roma llamada "Terni Lapilli" o "Tres piedras a la vez". cada jugador solo tenía tres
piedras para usar en el tablero y tenía que moverlas por los espacios vacíos para poder
seguir jugando, las primeras evidencias de estos juegos escritos con tiza por toda
Roma, fuera de Roma, aparecieron juegos similares a Tic Tac Toe en las antiguas
civilizaciones egipcias y del Medio Oriente, un juego de estrategia similar de tres en
raya se remonta al antiguo Egipto, para ganar este juego, el primer jugador que coloque
sus tres piezas en una de las ocho líneas. Este juego en particular llegó hasta China y
Filipinas.
“Picaria” era el juego que jugaban los habitantes de Pueblo en lo que ahora es el
suroeste de los Estados Unidos. Picaria tiene más en común con Three Men's Morris
que con Tic Tac Toe. El juego también requiere que los jugadores alineen tres de sus
piezas en una fila moviéndose libremente por el tablero.
La cuadrícula de 3x3 parece ser lo más consistente en la historia de Tic Tac Toe. Si
bien se usa principalmente con fines de entretenimiento, la cuadrícula de 9 cuadrados
también se usó como una ayuda mágica en la época medieval. Conocido como "el
Cuadrado Mágico", esta cuadrícula alinea los números del 1 al 9 para que sus sumas
sean las mismas horizontal, vertical y diagonalmente. Se creía que este cuadrado
contenía un mensaje numérico que contenía los secretos del mundo.
Desarrollo.
Con el preámbulo anterior el juego propuesto por nuestro grupo de trabajo es el juego
TIC TAC TOE este juego tiene como objetivo alinear 3 o más de tus símbolos
actualmente este juego debe tener en cuenta lo siguiente:
Los símbolos son X O, o ceros y cruces en un tablero.
El tablero es de 9 espacios.
El juego XO es para 2 jugadores, que se turnan para marcar el espacio libre en una
cuadrícula.
Desarrollo Semana 7 y semana 8
En la imagen podemos observar la pantalla principal del juego que consta de 4
elementos:
• Etiqueta
• Botón
• Casillas
• Tablero
Etiqueta: La etiqueta mostrará en todo momento a los jugadores el estado del juego. En
pantalla vemos el título, pero una vez comience el juego el título cambiará y le irá
indicando a los jugadores que jugador tiene el turno. Cuando un jugador haya ganado,
la etiqueta mostrará quien fue el jugador ganador. Por último, si ninguno de los
jugadores gana. La etiqueta mostrará un mensaje anunciando que hubo un empate.
Botón: Como se puede observar en la imagen, el botón servirá para comenzar un juego
nuevo. Este botón podríamos decir que es “dinámico” ya que, cuando comienza el
juego, el botón desaparecerá de la pantalla hasta que el juego haya terminado.
En el tablero de juego (delimitado por los bordes azules) los jugadores deberán dar un
clic sobre la casilla que desean marcar. Dependiendo del jugador, la casilla se marcará
con una “X” o con una “O” y como mencionábamos en la parte inicial en la etiqueta se
puede ver a qué jugador le toca el turno para marcar una casilla.
En esta imagen se puede observar que pasa cuando un jugador gana y que pasa
cuando ninguno de los jugadores logra ganar.
El desarrollo de este juego se hizo utilizando el lenguaje de programación JAVA con el
IDE de desarrollo Eclipse y el framework JavaFX.
La estructura del desarrollo la dividimos en dos partes: la primera es el modelo que
contiene las clases y los métodos que permiten el funcionamiento de la aplicación y la
segunda es la vista que permite tener una interfaz gráfica para que los usuarios puedan
jugar con facilidad el juego.
Para nosotros como equipo fue todo un reto lograr desarrollar la aplicación debido a
que, ningún integrante del equipo había trabajado antes con JavaFX. Por lo tanto, no
conocíamos y aún nos falta mucho por conocer sobre el potencial de este framework.
Uno de los principales problemas que presentamos es que al principio pensábamos que
el tablero debía ser un grid y que luego podríamos ir escribiendo los símbolos sobre ese
grid, pero se nos hizo difícil implementar esto, además había que crear demasiadas
líneas de código. Investigando en internet nos dimos cuenta de que con simplemente
utilizar uno de los objetos “Retangle” que proporciona JavaFX el trabajo de editar las
casillas iba a ser mucho más sencillo de lo que pensábamos. Otro problema que se nos
presentó a la hora de desarrollar el juego fue que un usuario podría perfectamente
cambiar el tamaño de la aplicación y reducirlo tanto que ninguno de los dos jugadores
podría ver el tablero y mucho menos podría marcar la casilla que deseara. Por lo tanto,
se decidió crear una clase con constantes que nos permitiera fijar el tamaño de la
pantalla de la aplicación y así evitar el inconveniente.
Como no se utilizó el archivo FXML que normalmente se usa en las aplicaciones con
JavaFX también tuvimos que investigar sobre la forma de fijar los controles que hacen
parte de la pantalla. Aunque a cada control se le puede pueden dar dimensiones y
fijarlos, fue para nosotros muy bueno descubrir que agregando cada control como un
“hijo” del BorderPane podíamos solucionar el problema de la fijación de los controles.
Pantallazos evidencia Java
Diagrama de clases
Conclusión.
Con la entrega de este proyecto nos permitimos realizar un gran trabajo en equipo
separando los temas y aportando ideas para un gran desarrollo de la programación de
juego en Java, encontramos que Java es una excelente opción debido a la versatilidad
del lenguaje y la rica colección de material de código abierto. Algunos de los mejores
juegos móviles del mundo se han desarrollado en Java, como Minecraft, Mission
Impossible III y Asphalt 61. Además, existen frameworks como LibGDX que permiten la
creación de juegos multiplataforma2.
Nuestro juego es simple y como principiantes nos permite una gran implementación
para aprender a programar mientras se crea algo divertido e interactivo. Con la práctica
y la dedicación, puedes desarrollar tus habilidades y eventualmente trabajar en el
desarrollo de juegos profesionales.
Bibliografía.
Henao, C., & Perfil, V. T. mi. (s/f). Conceptos Básicos de Programación Orientada a
Objetos. [Link]. Recuperado el 24 de mayo de 2022,
de[Link]
Herramientas básicas para los desarrolladores en Java. (2015, mayo 20). BBVA
API_Market. [Link]
los-desarrolladores-en-java/
(S/f). [Link]. Recuperado el 24 de mayo de 2022, de
[Link]