¿Qué son las clases? ¿y los objetos? - POO Python - Capítulo 1


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 a fondo 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 lo que 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?

Un objeto en POO representa alguna cosa de la vida real. Por ejemplo, un videojuego. Este tendrá 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 lo representamos?
La respuesta es con métodos Y atributos para poder especificar las características de cada uno de los objetos.

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

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

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.

Código

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.

Código

class NombreClase:
    pass

primer_objeto = NombreClase()

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

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

Bien, si quieres 10 objetos todos con los mismos métodos y atributos creando una clase, específicas dichos atributos y métodos 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 10 objetos, repetirás el mismo código diez veces.


Suscríbete a mi canal de YouTube para apoyarme

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.


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.