• Saltar a la navegación principal
  • Saltar al contenido principal
Logo Codificando Bits

Codificando Bits

  • Academia
    • Rutas
    • Cursos
    • Proyectos
    • Tutoriales
  • Acceder
  • Suscribirse

17 – Proyecto final: juego de cartas con Programación Orientada a Objetos

Lección 17 del curso Python Nivel Avanzado.

En la lección anterior vimos algunas de las principales sugerencias a tener en cuenta para implementar nuestros programas usando el enfoque de Programación Orientada a Objetos.

Usando estas sugerencias, así como los conceptos vistos anteriormente, en este proyecto final del curso implementaremos un juego de cartas haciendo uso de herramientas como la herencia y el polimorfismo.

Comencemos viendo en detalle las características de este juego:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

En el juego que implementaremos haremos uso de la baraja inglesa que contiene 52 cartas. Además, participarán tres jugadores: el computador, un jugador humano y el Croupier (quien reparte las cartas).

Inicialmente se debe mezclar la baraja, se reparten 10 cartas a cada jugador y se decide aleatoriamente quién inicia. El jugador que inicia lanza una carta de cualquier palo y rango, y el contrincante debe responder con una carta del mismo palo, o robar del mazo si no tiene.

El jugador que lanzó la carta de mayor rango vuelve a lanzar. Si el jugador aún no tiene una carta del mismo palo después de robar, debe pasar y el contrincante lanza. Y al final gana quien se quede sin cartas o con la menor cantidad de cartas al final.

¡Y la idea es implementar este juego usando precisamente Programación Orientada a Objetos!

Así que teniendo claras las características del juego, veamos el diseño de cada una de las clases que harán parte de la implementación final:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Muy bien, acabamos de diseñar las clases que corresponden a los diferentes elementos que interactuarán en nuestro juego, desde la clase «Carta» hasta la clase «Jugador» que representará a cualquiera de los tres protagonistas de nuestro juego (humano, computador y Croupier).

El paso siguiente es implementar una a una estas clases, comenzando con la clase «Carta»:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Veamos ahora cómo implementar la clase «Baraja»:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

La siguiente clase que veremos es «Jugador»:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Vamos ahora con la clase «Croupier» (encargado de repartir las cartas):

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Y por último veamos cómo implementar la clase «Humano»:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Y habiendo implementado todas las clases lo único que nos resta es integrarlas y poner a prueba el juego. Para integrarlas implementaremos una nueva clase, «Juego», que incorporará todos los elementos que permiten la interacción de las clases implementadas anteriormente.

Veamos cómo implementar esta última clase y cómo poner a prueba nuestro juego:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

¡Excelente! Acabamos de ver cómo usar los diferentes elementos de Programación Orientada a Objetos aprendidos en este curso para implementar nuestro juego de Blackjack. ¡Y realmente funciona bastante bien!

Así que con esto hemos culminado este curso de Python Nivel Avanzado, ¡te felicito por haber llegado hasta este punto! y te invito a ver el video de cierre donde haré un breve resumen de todo lo aprendido en este curso:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

De nuevo felicitaciones por haber completado este curso y te invito a continuar tu formación con los demás cursos disponibles acá en la Academia Online.

Todas las lecciones del curso Python Nivel Avanzado

© Codificando Bits, LLC | Blog | Contacto | Servicios | Acerca de | Políticas

¿Has olvidado la contraseña?
¿Has perdido tu contraseña? Por favor, introduce tu nombre de usuario o dirección de correo electrónico. Recibirás por correo electrónico un enlace para crear una nueva contraseña.
body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb }