Arquitectura y Clases - ArleyBuritica8/juego-cartas-condici-n GitHub Wiki

Arquitectura del sistema

El proyecto está desarrollado utilizando programación orientada a objetos. Cada clase representa una responsabilidad específica dentro del funcionamiento del juego.

La separación de las clases permite organizar el código y facilitar su mantenimiento y comprensión.

La arquitectura principal está compuesta por:

  • Carta
  • Baraja
  • Jugador
  • TipoOrden
  • Condicion
  • Ronda
  • Juego
  • Serializacion

Carta

La clase Carta representa una carta individual del juego.

Atributos

  • color: almacena el color de la carta.
  • numero: almacena el valor numérico de la carta.

Funciones principales

  • getColor()
  • getNumero()
  • setColor()
  • setNumero()
  • mostrar()

Baraja

La clase Baraja administra las cartas disponibles durante la partida.

Utiliza un vector<Carta> para almacenar las cartas.

Funciones principales

  • crearBaraja()
  • mezclar()
  • sacarCarta()
  • estaVacia()
  • cantidadCartas()
  • mostrar()

Jugador

La clase Jugador representa a cada participante.

Atributos

  • id
  • nombre
  • mano
  • puntos

La mano del jugador se almacena utilizando un vector<Carta>.

Funciones principales

  • recibirCarta()
  • jugarCarta()
  • mostrarMano()
  • mostrarInformacion()
  • tieneColor()
  • sumarPunto()
  • cantidadCartas()

TipoOrden

TipoOrden es un enum class que define el tipo de comparación utilizado por una condición.

Sus valores son:

MAYOR
MENOR
⚠️ **GitHub.com Fallback** ⚠️