Añadiendo clases a un paquete

Principios de ingeniería de software en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Programación orientada a objetos

Modularidad OOP

Principios de ingeniería de software en Python

Anatomía de una clase

trabajando en work_dir/my_package/my_class.py

# Definir una clase mínima con un atributo
class MyClass:

"""Una clase de ejemplo mínima :param value: valor para establecer como el atributo ``attribute`` :ivar attribute: contiene el contenido de ``value`` pasado en init """
# Método para crear una nueva instancia de MyClass def __init__(self, value): # Definir atributo con el contenido del parámetro value self.attribute = value
Principios de ingeniería de software en Python

Usando una clase en un paquete

trabajando en work_dir/my_package/__init__.py

from .my_class import MyClass

trabajando en work_dir/my_script.py

import my_package

# Crear instancia de MyClass
my_instance = my_package.MyClass(value='valor del atributo de clase')

# Imprimir valor del atributo de clase
print(my_instance.attribute)
'valor del atributo de clase'
Principios de ingeniería de software en Python

La convención self

trabajando en work_dir/my_package/my_class.py

# Definir una clase mínima con un atributo
class MyClass:
    """Una clase de ejemplo mínima

    :param value: valor para establecer como el atributo ``attribute``
    :ivar attribute: contiene el contenido de ``value`` pasado en init
    """

    # Método para crear una nueva instancia de MyClass
    def __init__(self, value):
        # Definir atributo con el contenido del parámetro value
        self.attribute = value
my_instance = my_package.MyClass(value='valor del atributo de clase')
Principios de ingeniería de software en Python

¡Vamos a practicar!

Principios de ingeniería de software en Python

Preparing Video For Download...