Clase 17: Introducción a Programación Orientada a Objetos
Introducción a Programación Orientada a Objetos (POO)
¿Qué es la POO?
La Programación Orientada a Objetos es un paradigma que organiza los programas alrededor de objetos.
Un objeto representa una entidad que posee:
- datos o características
- comportamientos
Por ejemplo, podemos representar un alumno.
Un alumno tiene características:
Nombre
Edad
Curso
Notas
Y puede realizar acciones:
Estudiar
Rendir examen
Calcular promedio
Mostrar información
Podemos representar esto como:
ALUMNO
┌───────────────┐
│ Características│
│ │
│ nombre │
│ edad │
│ curso │
│ notas │
│ │
│ Comportamientos│
│ │
│ estudiar() │
│ rendir() │
│ promedio() │
└───────────────┘
Objeto
Un objeto es una entidad que contiene datos y comportamientos relacionados.
Por ejemplo:
Alumno: Ana
Edad: 17
Curso: 6°A
es un objeto que representa a una determinada alumna.
Otro objeto podría ser:
Alumno: Bruno
Edad: 18
Curso: 6°A
Ambos representan alumnos, pero tienen diferentes datos.
Atributos
Los atributos representan las características o datos de un objeto.
Por ejemplo, un alumno puede tener:
nombre
edad
curso
notas
Podemos pensarlo así:
Alumno
nombre = "Ana"
edad = 17
curso = "6°A"
Los atributos describen cómo es un objeto.
Métodos
Los métodos representan acciones que puede realizar un objeto.
Por ejemplo:
Alumno
estudiar()
rendir_examen()
calcular_promedio()
Los métodos describen qué puede hacer un objeto.
Una de las ideas principales de la POO es reunir los datos y los comportamientos relacionados.
ALUMNO
│
┌─────────┴─────────┐
│ │
ATRIBUTOS MÉTODOS
│ │
nombre estudiar()
edad rendir()
curso promedio()
notas mostrar()
Clase
Una clase es una plantilla, un molde, para crear objetos.
Por ejemplo, la clase Alumno es una plantilla para crear objetos de tipo Alumno.
De la misma manera que podemos crear muchas casas a partir de un plano, podemos crear muchos objetos a partir de una clase.
A partir de esa clase podemos crear diferentes objetos.
CLASE ALUMNO
│
┌─────────┼─────────┐
▼ ▼ ▼
Ana Bruno Carla
17 18 17
6°1º 6°1º 6°2º
Actividad
- Crear 3 clases diferentes (no necesariamente en python), pero relacionadas entre sí.
- Deberán tener al menos 4 atributos y 3 métodos.