Programación Orientada a Objetos (POO)
En esta lección, exploraremos la Programación Orientada a Objetos (POO), un paradigma de programación que se basa en el uso de objetos y clases.
Conceptos Clave en POO
Objetos
Los objetos son instancias de clases y representan entidades del mundo real. Pueden tener atributos que describen sus características y métodos que definen su comportamiento.
Ejemplo:
class Persona:
def __init__(self, nombre, edad):
self.nombre = nombre
self.edad = edad
def saludar(self):
print(f"Hola, mi nombre es {self.nombre} y tengo {self.edad} años.")
persona1 = Persona("Juan", 25)
persona1.saludar()En este ejemplo, hemos creado una clase llamada “Persona”. La clase tiene un constructor (init) que inicializa los atributos “nombre” y “edad” de la persona. También tiene un método llamado “saludar” que muestra un mensaje con el nombre y la edad de la persona.
Clases
Las clases son plantillas o moldes que definen la estructura y el comportamiento de los objetos. En una clase, puedes especificar qué atributos y métodos tendrán sus objetos.
Ejemplo:
class Coche:
def __init__(self, marca, modelo):
self.marca = marca
self.modelo = modelo
def mostrar_info(self):
print(f"Marca: {self.marca}, Modelo: {self.modelo}")
coche1 = Coche("Toyota", "Camry")
coche1.mostrar_info()En este ejemplo, hemos creado una clase llamada “Coche” que tiene atributos “marca” y “modelo”. También tiene un método “mostrar_info” que imprime la información del coche.
Atributos
Los atributos son características o propiedades de un objeto que almacenan datos.
Ejemplo:
class Producto:
def __init__(self, nombre, precio):
self.nombre = nombre
self.precio = precio
producto1 = Producto("Teléfono", 500)
print(f"Producto: {producto1.nombre}, Precio: {producto1.precio}")En este ejemplo, hemos creado una clase “Producto” con atributos “nombre” y “precio”.
Métodos
Los métodos son funciones definidas en una clase que representan el comportamiento de los objetos de esa clase.
Ejemplo:
class Perro:
def __init__(self, nombre, raza):
self.nombre = nombre
self.raza = raza
def ladrar(self):
print(f"{self.nombre} está ladrando.")
perro1 = Perro("Max", "Labrador")
perro1.ladrar()En este ejemplo, hemos creado una clase “Perro” con el método “ladrar” que muestra un mensaje cuando un perro ladra.
Crea una clase “Libro” que represente libros con atributos como “título” y “autor”. Luego, implementa un método llamado “mostrar_info” que imprima los atributos del libro. A continuación, crea una instancia de la clase “Libro” y llama al método “mostrar_info” para mostrar la información del libro.
Explicación:
Esta actividad te permitirá practicar la creación de clases y objetos, así como comprender cómo la Programación Orientada a Objetos nos ayuda a modelar y organizar nuestros programas de manera más efectiva.
¿Qué aprendimos?
- Aprendimos los conceptos fundamentales de la Programación Orientada a Objetos (POO).
- Comprendimos cómo definir clases y objetos en Python.
- Practicamos la creación de atributos y métodos en una clase.
- Realizamos una actividad práctica para aplicar los conocimientos adquiridos en la creación de una clase y su uso.