Iniciando con Python Orientado a Objetos: Conceptos Basicos


Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. 

Se trata de un lenguaje de programación multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, usa tipado dinámico y es multiplataforma.

Es administrado por la Python Software Foundation. Posee una licencia de código abierto, denominada Python Software Foundation License que es compatible con la Licencia pública general de GNU a partir de la versión 2.1.1


Es un lenguaje que he empezado a estudiar porque es multiplataforma y su simplicidad es bastante sorprendente, no pretendo que esta sea una guía formal o un curso, esto es y sera una bitácora sobre como hacer ciertas cosas, de acuerdo a problemas puntuales que se me presenten, mismos  que documentare aquí por si alguien mas requiere ayuda.  

Entre las cosas que llaman la atención de este lenguaje se encuentra, la legibilidad del código, misma que es "forzada" debido a que no existen { } (llaves) en este lenguaje por lo que te "obliga" a identarlo para que pueda ser interpretado.

Clases

Lo primero que me llamo la atención al revisar las notas de Python es la manera de escribir las clases

 class Persona(): 
Código necesario para la creación de una clase.

Constructores

En Python se pueden crear constructores para inicializar variables (Su uso es opcional de acuerdo a lo que se requiera)

class Persona():
    def __init__(self):
        print('Hola soy un constructor') 
Código que muestra la creación de una clase y un constructor que al ser inicializado mostrara un mensaje, es necesario que se especifique como argumento la palabra self en primer lugar

Un constructor puede tener argumentos:


class Persona():
    def __init__(self):
        print('Hola soy un constructor')
    def __init__(self, nombre, apellido):
        print('Hola soy un constructor, tu nombre es: '+nombre+" "+apellido)
    def ImprimirMensaje(self): 

Ejemplo que muestra una clase con 2 Constructores, el segundo contiene parámetros adicionales

Métodos

Un método se define con la palabra reservada def seguida del nombre del método y posteriormente de los parámetros del mismo entre paréntesis, de la siguiente manera:

 class Persona():
    def ImprimirMensaje(self):
        print('Hola Mundo') 
Código que muestra la creación de una clase y un metodo llamando "ImprimirMensaje" que al ser invocado mostrara un mensaje, es necesario que se especifique como argumento la palabra self en primer lugar.

Instancias de Objetos de Clase

Una vez definidos los constructores y los métodos ser necesario crear una instancia de la Clase con la finalidad de hacer uso de los mismos.
Para esto debemos de escribir el nombre de nuestro objeto seguido del signo = y el nombre de la clase adjuntando entre paréntesis los argumentos (Si fuera el caso)

 class Persona():   
    def __init__(self):
        print('Hola soy un constructor')

objeto =Persona() 
Código que muestra la creación de una clase y seguida de su constructor, la ultima linea muestra la instancia del objeto de la clase Persona

En el ejemplo anterior podemos observar que:

objeto =Persona() 

Es la instancia de nuestra clase, debido a que el constructor tiene un mensaje al ejecutar el código veremos en pantalla el texto:
Hola soy un constructor

Si hacemos uso de un constructor que tiene argumentos entonces debemos especificarlos:

 class Persona():
    def __init__(self, nombre, apellido):
        print('Hola soy un constructor, tu nombre es: '+nombre+" "+apellido)
   
objeto =Persona('Oscar','Avila') 

Lo que dará como resultado:
Hola soy un constructor, tu nombre es: Oscar Avila

Finalmente si deseamos ejecutar un método, debemos hacer la invocación del mismo usando nuestro objeto:

 class Persona():
    def ImprimirMensaje(self):
        print('Hola Mundo')

objeto =Persona()
objeto.ImprimirMensaje() 

Por lo que obtendremos como resultado:

Hola Mundo

Y eso es todo por ahora amigos, una breve explicación de algunos de los conceptos mas importantes de Python Orientado a objetos, posteriormente veremos mas y tendremos algunas aplicaciones practicas.

Les dejo el Código del ejemplo completo a continuación:

 class Persona():
    def __init__(self):
        print('Hola soy un constructor')

    def __init__(self, nombre, apellido):
        print('Hola soy un constructor, tu nombre es: '+nombre+" "+apellido)

    def ImprimirMensaje(self):
        print('Hola Mundo')

objeto =Persona('Oscar','Avila')
objeto.ImprimirMensaje() 

Salida:
Hola soy un constructor, tu nombre es: Oscar Avila
Hola Mundo

 Saludos desde México!

Comentarios

Entradas más populares de este blog

Creando un scanner de códigos (de Barras y QR) para Android en React Native (Expo)

Instalar Neofetch información de tu distribución en la terminal

Navegación en React Native 1: Drawer (React Navigation)