Recuerdo cuando comencé a programar en Python, en ese tiempo utilizaba Zope, me encantaba programar en DTML, pocas veces en ZPT, y de vez en cuando utilizaba Python mediante el producto (hablando en términos Zopistas), External Methods. Eran tiempos de aprendizaje, recién egresaba de la carrera, tenía trabajo y había mucho que aprender pero ahora aplicado a un entorno real.
Pues bien, programé de varias formas, con más de un método, y recuerdo que en una temporada me negué a la programación orientada a objetos, la causa principal, no entendía, me frustraba y me daba terror, sumándole que sentía que me estancaba en las cosas que tenía que desarrollar (error de principiante).
Ahora, después de varios años, y habiendo experimentado, unos que otros lenguajes de programación, habiendo tenido que mantener, actualizar y evolucionar código, mío y de otros, el contexto me forzó a entender, aprender y utilizar OOP.
Y heme aquí, compartiendo esta entrada:
#$ vi miclasepy.py
#Este es un comentario dentro del archivo.
class MiClasePy():
"""Lo ideal es que siempre pongas una descripción para que los demás programadores puedan saber para qué, y porqué de esta clase."""
def __init__(self):
self.instance_var1 = None
self_instance_var2 = None
self._INSTANCE_VAR3 = 'http://jonathansalazar.com'
def.sitio_web(self):
"""Describe qué hace tu función/método. Puede devolver algo con la palabra reservada return o ejecutar un proceso o acción sin tener que emitir un mensaje. En este caso emitimos un mensaje vía return."""
return f"Este es mi sitio web {self.instance_var3}. Visítame!"
def modifica_variable(self, valor):
"""Ejecuta una acción en lugar de emitir un mensaje.""""
self._instance_var2 = f"{valor}"
def valor_variables(self):
"""Retornamos las variables que inicializaos en el constructor de la clase."""
return f"instance_var1: {self.instance_var1}, _instance_var2: {self._instance_var2}, _instance_var3: {self._INSTANCE_VAR3}"
Si quisieramos acceder a esta clase desde CLI:
#$ python
py> import miclasepy
py> instance1 = MiClasePy()
py> instance1.sitio_web()
Este es mi sitio web http://jonathansalazar.com. Visítame!
py> instance1.modifica_variable("Mi nuevo valor")
py> instance1.valor_variable()
instance_var1: None, instance_var2: "Mi nuevo valor", instance_var3: 'http://jonathansalazar.com'
Pues aquí lo tienes, es una estructura básica pero es la estructura con la cual puedes comenzar y hacerlo más abstracto.
Saludos,
Pues bien, programé de varias formas, con más de un método, y recuerdo que en una temporada me negué a la programación orientada a objetos, la causa principal, no entendía, me frustraba y me daba terror, sumándole que sentía que me estancaba en las cosas que tenía que desarrollar (error de principiante).
Ahora, después de varios años, y habiendo experimentado, unos que otros lenguajes de programación, habiendo tenido que mantener, actualizar y evolucionar código, mío y de otros, el contexto me forzó a entender, aprender y utilizar OOP.
Y heme aquí, compartiendo esta entrada:
#$ vi miclasepy.py
#Este es un comentario dentro del archivo.
class MiClasePy():
"""Lo ideal es que siempre pongas una descripción para que los demás programadores puedan saber para qué, y porqué de esta clase."""
def __init__(self):
self.instance_var1 = None
self_instance_var2 = None
self._INSTANCE_VAR3 = 'http://jonathansalazar.com'
def.sitio_web(self):
"""Describe qué hace tu función/método. Puede devolver algo con la palabra reservada return o ejecutar un proceso o acción sin tener que emitir un mensaje. En este caso emitimos un mensaje vía return."""
return f"Este es mi sitio web {self.instance_var3}. Visítame!"
def modifica_variable(self, valor):
"""Ejecuta una acción en lugar de emitir un mensaje.""""
self._instance_var2 = f"{valor}"
def valor_variables(self):
"""Retornamos las variables que inicializaos en el constructor de la clase."""
return f"instance_var1: {self.instance_var1}, _instance_var2: {self._instance_var2}, _instance_var3: {self._INSTANCE_VAR3}"
Si quisieramos acceder a esta clase desde CLI:
#$ python
py> import miclasepy
py> instance1 = MiClasePy()
py> instance1.sitio_web()
Este es mi sitio web http://jonathansalazar.com. Visítame!
py> instance1.modifica_variable("Mi nuevo valor")
py> instance1.valor_variable()
instance_var1: None, instance_var2: "Mi nuevo valor", instance_var3: 'http://jonathansalazar.com'
Pues aquí lo tienes, es una estructura básica pero es la estructura con la cual puedes comenzar y hacerlo más abstracto.
Saludos,
Comentarios
Publicar un comentario