Curso de POO en Python desde cero

¿Qué son las clases y los objetos de Python?

Capítulo 1: Iniciación a la Programación Orientada a Objetos con Python

Empiezo nuevo curso que voy a ir haciendo junto con los otros de Python, así que si los has hecho o los estás haciendo te vendrá genial para completarlos.
Este curso va a tratar la programación orientada a objetos para el lenguaje de programación Python y no recae en explicar los temas básicos de la sintaxis de Python, por ende, tendrás que tener conocimientos básicos de Python. Si no los tienes, puedes hacer mi curso de Python básico que empieza totalmente desde cero.

Gran parte de los conocimientos que adquieras en este curso te servirán para aplicarlos a otros lenguajes de programación orientados a objetos, que son mayoría hoy en día.

¿Qué son los objetos en programación orientada a objetos

Un objeto en programación orientada a objetos, representa alguna cosa de la vida real.
Un buen ejemplo, son los videojuegos. Estos tienen diversos objetos, entre ellos podríamos tener como un objeto a un enemigo, que tiene sus propias características. También, tendríamos al personaje principal que tiene otras características, etc.

Videojuegos programación orientada a objetos

Pongamos otro ejemplo, una tienda online. Esta tiene muchos objetos, por ejemplo, cada uno de los productos, el carrito de la compra, entre otras cosas.

Tienda online programación orientada a objetos

En conclusión, un objeto puede ser cualquier cosa que queramos representar dentro de un programa.
¿Cómo los representamos?
La respuesta es, con métodos y atributos para poder especificar las características de cada uno de ellos.

Imagina de nuevo el personaje principal de un juego y un enemigo.
Este tiene un método que le permite saltar. En cambio, el objeto del enemigo no tiene dicho método, por lo tanto, el personaje principal podrá saltar y el enemigo no y esto es lo que llamo yo jugar a ser dioses, ya que podemos inventar, crear y será real, existirá y tendrá sus propias capacidades aunque sea dentro de un dispositivo.

Los atributos son cada una de las configuraciones que definen al objeto, por ejemplo, objetos pantalón, estos objetos llevan en común el atributo color. Podemos tener un mismo atributo con valores diferentes, por ejemplo un pantalón negro y otro de color blanco. Otro atributo podría ser el tipo de pantalón. En este caso, los dos llevarían el valor sport.

Pantalones

Crear una clase con Python

Pasemos a la creación de objetos. Lo primero que necesitamos para construir objetos son las clases. Clases que permitirán crear objetos, y a esta acción de crear objetos se le conoce en programación como instanciación.

En la clase especificamos las características. Después a partir de esa clase creamos el objeto, el cual obtiene todas esas características que hemos especificado en la clase.
Ahora verás cómo crear una clase y lo verás todo más claro.

Para escribir una clase en Python, lo haremos con la palabra reservada class seguida del nombre de la clase, que por convención este se escribe en mayúscula la primera letra de cada palabra para distinguirlo fácilmente en el código. Esta forma de escribir, es conocida en programación como camel case.

Crear una clase vacía en Python

Podemos crear una clase y no especificar nada dentro de ella. Para hacerlo más adelante. La dejamos con pass y el programa compilará sin errores. En cambio, si omites el pass, te dará un error.

class NombreClase:
	pass

Instanciar o crear objetos en Python

No podía ser más sencillo crear objetos en Python, solo escribe el nombre del objeto, operador de asignación el nombre de la clase junto unos paréntesis.

class NombreClase:
	pass
						
primer_objeto = NombreClase()

Con esto ya lo tenemos creado. ¿Y si la clase tuviese métodos y atributos? En este caso, el objeto recién creado los estaría adquiriendo.

¿Qué ventaja principal hay en crear clases en lugar de funciones directamente?

Bien, supongamos que quieres crear diez objetos todos con cosas en común, pero con pequeñas variaciones unos de otros, como por ejemplo el color, el tamaño, etc. Creando una clase, específicas dichos atributos y métodos generales una sola vez y los obtienen todos los objetos que vayas creando, en cambio, si creas funciones para sustituir estos objetos, tendrás que hacer una función repetida cada vez, y si son diez objetos, repetirás el mismo código diez veces.

Comentarios

Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.