Inicio - ArleyBuritica8/juego-cartas-condici-n GitHub Wiki

Bienvenido a # Juego de Cartas por Condición

Presentación

Juego de Cartas por Condición es un proyecto académico desarrollado en C++ para la asignatura de Estructura de Datos.

El proyecto consiste en un juego de cartas en el que participan varios jugadores. Cada jugador recibe una cantidad configurable de cartas y participa en diferentes rondas.

En cada ronda se establece una condición compuesta por un color y un orden de comparación (MAYOR o MENOR). Los jugadores juegan cartas y el sistema determina cuál es la carta ganadora de acuerdo con la condición establecida.

El proyecto fue desarrollado aplicando conceptos de programación orientada a objetos, estructuras dinámicas, modularización, manejo de archivos y serialización.

Objetivo general

Desarrollar un juego de cartas por condición utilizando C++, aplicando estructuras de datos y programación orientada a objetos para gestionar jugadores, cartas, rondas, condiciones y el estado de una partida.

Objetivos específicos

  • Implementar las diferentes clases que componen el juego.
  • Utilizar estructuras dinámicas como vector.
  • Implementar una baraja de cartas.
  • Gestionar jugadores y sus respectivas manos.
  • Crear condiciones para determinar las cartas ganadoras.
  • Administrar el desarrollo de las rondas.
  • Implementar el guardado y carga de partidas mediante serialización.
  • Aplicar Git y GitHub para el control de versiones y trabajo colaborativo.
  • Documentar la estructura del proyecto mediante UML.

Componentes principales

El proyecto está compuesto por las siguientes clases:

  • Carta: representa una carta individual.
  • Baraja: administra el conjunto de cartas.
  • Jugador: representa a los participantes y sus manos.
  • Condicion: establece las reglas para determinar la carta ganadora.
  • TipoOrden: define los órdenes MAYOR y MENOR.
  • Ronda: administra cada ronda del juego.
  • Juego: coordina el funcionamiento general de la partida.
  • Serializacion: permite guardar y cargar partidas.

Tecnologías

  • C++
  • C++17
  • Visual Studio Code
  • Git
  • GitHub
  • MSYS2 / MinGW

Documentación

La documentación del proyecto incluye:

  • Descripción del funcionamiento.
  • Arquitectura de clases.
  • Diagrama UML.
  • Sistema de serialización.
  • Instrucciones de compilación y ejecución.
  • Organización del desarrollo mediante Git y GitHub.

Control de versiones

El desarrollo se organizó utilizando ramas independientes para las diferentes funcionalidades del proyecto.

Las funcionalidades fueron integradas mediante Pull Requests hacia la rama develop.

La rama main corresponde a la versión final del proyecto.the juego-cartas-condici-n wiki!