Zurvin
BLOG

He construido un Tetris y esto he aprendido

zurvin

El Tetris, con sus piezas que caen y la necesidad de una rápida toma de decisiones, me pareció el desafío perfecto para poner a prueba mis habilidades de programación. Además, el Tetris es un juego clásico y muy conocido, lo que lo convierte en un proyecto ideal para compartir con otros entusiastas de la programación.

Probar el juego aquí

Ver el repositorio en Github

La version 1 de mi juego no incluye toda las características del juego. Dejo a mi futuro yo un trabajo pendiente para completar los niveles, complejidad y quizás un modo multijugador. Ha sido un viaje fascinante. En este artículo, compartiré algunas de las lecciones que he aprendido durante el proceso y cómo esta experiencia ha mejorado mis habilidades como desarrollador:

1. Comprender la lógica del juego

Antes de comenzar a escribir una sola línea de código, fue fundamental entender cómo funciona el Tetris. Investigué las reglas básicas del juego, cómo se mueven las piezas, cómo se eliminan las líneas y cómo se calcula la puntuación. Esto me permitió crear una base sólida sobre la cual construir mi implementación del Tetris.

Aquí está una versión simplificada de mi pseudocódigo:

zurvin

Este pseudocódigo sienta la idea de cómo debería ser la estructura del juego y cómo interactuarían los diferentes elementos. Con esta base, estaba listo para comenzar a implementar el juego.

2. Planificación y diseño

Antes de sumergirme en la codificación, dediqué tiempo a planificar y diseñar la arquitectura del juego. Definí las clases y funciones necesarias, así como las interacciones entre ellas. Crear un diseño sólido me ayudó a tener una visión clara del proyecto y evitar problemas importantes más adelante.

Cosas que consideré: la cantidad de columnas, cantidad de filas, el tamaño de cada celda, las piezas totales del tablero y las piezas ocupadas.

zurvin

3. Comprender el concepto de tetrominos

Los tetrominos son piezas compuestas por cuatro cuadrados unidos entre sí. Cada tetromino puede tener diferentes formas y se puede girar para adaptarse a distintas posiciones dentro del tablero. En el caso del Tetris hay tetrominos diferentes: “I”, “J”, "L", "T", “S”, “Z” y el cuadrado. Estas formas básicas se repiten y caen desde la parte superior de la pantalla y el jugador debe rotar y colocar los tetrominos de manera estratégica para completar líneas horizontales y evitar que el tablero se llene.

zurvin

4. Utilización de algoritmos y estructuras de datos adecuadas

La elección de los algoritmos y estructuras de datos adecuados tuvo un gran impacto en el rendimiento y la eficiencia de mi Tetris. Utilicé una matriz bidimensional para representar el tablero y algoritmos para detectar colisiones, eliminar líneas completas y calcular la puntuación. Comprender y seleccionar las herramientas adecuadas fue fundamental para lograr un juego fluido y sin errores.

5. Compartir conocimientos

Puedes probar el juego aquí: https://super-dark-tetris.vercel.app/

Si estás interesado en explorar y estudiar el código fuente completo, está disponible en Github. Allí encontrarás todos los componentes, funciones y lógica necesarios para ejecutar el juego y experimentar con él.

En resumen, construir mi propio Tetris ha sido un viaje emocionante y educativo. He aprendido sobre la lógica del juego, planificación, diseño modular, selección de algoritmos y estructuras de datos adecuadas.