En el video anterior, aprendimos que Opie es lo que llamamos un paradigma, una forma de pensar sobre nuestro código
y estructura, nuestro código.
Y voy a vincular a este excelente artículo de Wikipedia sobre la historia de los lenguajes de programación.
Verá, comenzamos con lenguajes de programación básicos.
Tenemos cosas como el lenguaje ensamblador que era de muy bajo nivel, muy cercano al código de máquina.
Teníamos cosas como Kobel y luego, lentamente, a medida que comenzamos a escribir más y más código en los años
60 y 70, comenzamos a establecer algunos de estos paradigmas fundamentales.
Y uno de los grandes paradigmas que surgió, especialmente con el lenguaje de programación de charlas
triviales, fue esta idea de programación orientada a objetos o un lenguaje orientado a objetos.
Verá, hasta ese momento, escribimos lo que llamamos código de procedimiento.
Lo que eso significa es que si miramos un archivo de Python, por ejemplo, un código de procedimiento era como un
procedimiento.
Simplemente teníamos las líneas uno a través, digamos cien, y pasamos de la parte superior de la línea a
la parte inferior de la línea, teníamos condicionales, tal vez bucles, pero todo era hacer esto, hacer aquello.
Fuimos nosotros diciéndole a la máquina, oye, haz exactamente lo mismo.
Eso es lo que les voy a decir con la introducción de paradigmas orientados a objetos.
Esto cambió un poco, comenzamos a decir, oye, modelemos algo en nuestro código que represente un objeto del
mundo real.
Por ejemplo, si estoy a punto de codificar un automóvil, crearía un objeto de automóvil que tenga datos sobre qué
color es, qué tipo de motor tiene, cuántos asientos tiene, pero también acciones como métodos
que podemos tomar. en él, como el automóvil puede avanzar, puede retroceder, puede abrir la puerta.
Y en lugar de tener este código de procedimiento línea por línea, podemos pensar en términos de
modelos, planos del mundo real, porque como humanos organizamos las cosas, pensamos en una habitación, pensamos en una fábrica organizando
las cosas y teniendo diferentes grupos en un mismo espacio. ubicación específica trabajando juntos.
Esa es una mejor manera de pensar y de manejar las cosas.
Entonces, ¿cómo se vería esto en Python?
Bueno, Python es un lenguaje orientado a objetos, o Cambie, lo que significa que es capaz de soportar opioides, esta idea de
objetos y modelado y lo hemos visto cuando usamos el tipo, vemos que todo es un
objeto porque usamos esto palabra clave de clase.
Pero, ¿cuál es esta palabra clave de clase en Python?
Puedo crear mis propios datos, escribir mi propia clase simplemente diciendo clase, y luego puedo nombrarla como
quiera.
Digamos clase.
Grande.
Objeto.
Ahora, de inmediato, ve aquí que la convención de nomenclatura es diferente a lo que hemos visto antes.
Nos aseguraremos de que esté en mayúsculas, que es el estándar que queremos que los programadores sepan que esta será una
clase y que no usaremos el caso de la serpiente.
Usamos lo que llamamos Comikaze, que es cada palabra nueva, es una letra mayúscula.
Y luego aquí usamos el Callon y luego aquí escribimos nuestro código.
Ahora, no voy a escribir el código en este momento, solo voy a aprobar.
Pero ahí mismo, acabo de crear una nueva clase, así que si lo hago, digamos, por ejemplo.
Escribe.
Objeto grande y hago clic en ejecutar.
Bueno, todavía obtengo tipo, porque en este momento lo que hemos creado es esta clase, que es un plano, pero
en realidad no hemos creado el objeto.
Sé que la redacción puede resultar confusa, pero tengan paciencia.
Explicaré esto.
Ahora podemos crear, digamos que el objeto uno es igual a dos objetos grandes.
Y luego ejecuta esta clase.
De modo que si escribo objeto aquí, objeto uno y hago clic en ejecutar.
Tengo clase, gran objeto.
Puedes ignorar el main aquí por ahora, porque hablaremos de eso más tarde, pero ves aquí que
acabo de crear mi propio objeto.
Ahora, pensemos en lo que acaba de pasar aquí, porque hay mucho que entender.
Ves una programación orientada a objetos, existe esta idea de una clase y un objeto, ahora una clase es este,
es el plano, el plano de lo que queremos crear.
¿Cuáles son los atributos básicos?
¿Qué propiedades tiene nuestra clase?
¿Cuáles son algunos de los métodos o acciones básicos que puede realizar nuestra clase?
Y luego, a partir de este plano, puedo crear diferentes objetos una y otra vez usando esto como bloque de
construcción.
Entonces este plano es lo que llamamos una clase.
Lo que definimos con la palabra clave, y esta clase se puede instanciar, esa es la acción de
crear diferentes instancias.
¿Y cuáles son estos casos?
Todos estos son objetos.
Ahora, el nombre aquí es algo a lo que tendrá que acostumbrarse, y todos los lenguajes
de programación orientados a objetos tienen este lenguaje, por lo que solo tendrá que entender lo que alguien dice,
oye, acabo de crear una instancia de una clase.
Significa, oye, acabo de crear una nueva instancia, un nuevo objeto.
Entonces, mirando este diagrama, volvamos al código que acabamos de escribir, hemos creado aquí una clase o
un plano.
Y luego aquí, este doble paréntesis nos muestra instanciando la clase y diciendo, oye, clase, usa lo que tengas aquí
y crea una instancia y crea un nuevo objeto.
Así que estamos creando un nuevo objeto creando instancias de esta clase.
Y esto es exactamente lo que estamos haciendo con algo como una lista, ¿verdad?
Puedo crear varias listas una y otra vez, y cada vez que creo una lista, tengo acceso
a todos estos métodos y, a veces, incluso a los atributos que puedo usar.
Y de esta manera, ahorro mucho tiempo en lugar de recubrirlo yo mismo y de la misma manera puedo
crear múltiples objetos aquí.
Objeto tres.
Así, y ahora tengo tres objetos diferentes que puedo usar en base a este plano.
Ahora, el plano en este momento no tiene nada porque, bueno, puedo agregar código aquí más tarde y lo haremos
en el siguiente video.
Pero la belleza es que pensemos en la eficiencia.
Aquí puede ver el plano en sí.
La clase se almacenará en la memoria.
Entonces, el intérprete de Python dirá, oye, gran objeto.
Va a ser el modelo para esto.
Así que voy a almacenar todo ese código en la memoria.
Pero cada vez que creo un objeto, no tengo que reescribir el código ni hacer nada por el estilo.
Simplemente puedo decir, oye, ir en la memoria a donde está el objeto grande y simplemente ejecutar ese código para que,
nuevamente, mantengamos nuestro código seco.
Tenemos un lugar que nos permite instanciar nuestro código en objetos.
Tomemos un descanso y ampliemos esta clase en el siguiente video.