La Programación Orientada a Objetos es el enemigo público de los principiantes.

Si eres de los que está empezando a a programar o vienes de la vieja escuela donde todo tu código es una escalera repetitiva no muy óptima, el concepto de Programación orientada a Objetos o (P.O.O) te puede sonar un poco confuso o incluso inentendible de primera mano

En este breve capitulo de #educadigital te queremos contar qué es la programación orientada a objeto y explicarla con Python para que la entiendas de la mejor manera, a nuestro modo.

¿Qué es la programación orientada a Objetos?

Aspectos Básicos de la P.O.O.

La Programación Orientada a Objetos no es más que la creación de objetos con ciertos atributos y métodos propios. Esto quiere decir que  los métodos que se definen actúan como funciones que utilizan la información provista por el objeto para generar resultados.

Sin usar Lenguaje Técnico, pensemos en lo siguiente. ¡Voy a Crear un Perro! ¿Es posible que todos los perros tengan algo en común? Sí, así como también hay cosas que difieren en cada uno. Vamos a definir un molde o plantilla para nuestro perro (esto será la CLASE) y le entregaremos un atributo general que tendrán todos los perros que es «4 patas» (ATRIBUTO DE LA CLASE). En Python se vería más o menos así.


    #CLASE O PLANTILLA PERRO
    Class Dog():
        #ATRIBUTO DE CLASE DEL OBJETO
        foot = 4
   

Listo hemos Creado una plantilla para Perros y ahora cuando creemos un perro todos tendrán 4 patas. Pero además, cada perro (Objeto) en sí mismo tiene algunas características propias por ejemplo «pepe» es un perro «mestizo». Esas características (digamos por ahora argumentos) se las debo definir como características únicas de ese objeto, para eso necesito algún «Método» (Operación o Acción si lo quieres ver así). Los métodos se ven como otras funciones dentro de una clase y trabajan de alguna manera con el objeto;  se diferencian de los atributos en la manera en que los invocamos ya que estos sí requieren ser ejecutados.

Nota: en Python el método self por convención debe ser definido. (Cuando digamos por convención, piensa en que es así por definición matemática, así no te complicas la vida…por ahora…)


    #CLASE O PLANTILLA PERRO
    Class Dog():
        #ATRIBUTO DE CLASE DEL OBJETO
        foot = 4
        #DEFINIMOS UN MÉTODO DE INICIO
        #ESTE PASA A SER EL CONSTRUCTOR DEL OBJETO
        def __init__(self, raza, nombre):
            #LE PASAMOS ESOS ARGUMENTOS DE RAZA Y NOMBRE A LOS ATRIBUTOS O
            #CARACTERÍSTICAS PROPIAS DE CADA PERRO
            self.raza = raza
            self.nombre = nombre
   

Básicamente lo que estoy diciendo en la segunda parte del código y al crear un objeto con características propias (instanciar el objeto), es que esas características que vienen de algún lugar (raza, nombre) se las tengo que entregar a las propiedades del objeto (self.raza, self.nombre)

Luego me falta solamente crear o instanciar mi objeto Perro.


    #CLASE O PLANTILLA PERRO
    Class Dog():
        #ATRIBUTO DE CLASE DEL OBJETO
        foot = 4
        #DEFINIMOS UN MÉTODO DE INICIO
        #ESTE PASA A SER EL CONSTRUCTOR DEL OBJETO
        def __init__(self, raza, nombre):
            #LE PASAMOS ESOS ARGUMENTOS DE RAZA Y NOMBRE A LOS ATRIBUTOS O
            #CARACTERÍSTICAS PROPIAS DE CADA PERRO
            self.raza = raza
            self.nombre = nombre
#VAMOS A CREAR EL OBJETO 'MI PERRO'
mi_perro = Dog(raza='Mestizo', nombre = 'Pepe)
   

Notemos que hemos creado el objeto mi_perro usando la plantilla Dog con las características propias de Raza y Nombre. Y que Como cualquier otro perro tendrá 4 Patas

Espero que les haya gustado esta breve explicación usando Python para entender un poco más la Programación Orientada a Objetos.

COMPARTE ESTE PROYECTO:

Share on facebook
Facebook
Share on whatsapp
WhatsApp
Share on linkedin
LinkedIn
Share on email
Email

CONVERSEMOS SOBRE TU PROYECTO