Programación Orientada a Objetos (POO)

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Programación Orientada a Objetos (POO) por Mind Map: Programación Orientada a Objetos (POO)

1. Concepto de POO

1.1. Definición: Paradigma de programación que organiza el software en torno a "objetos"

1.1.1. Paradigma: Metodología para resolver problemas de software de manera unificada y simplificada.

1.1.2. Objetos: Entidades que combinan datos (atributos) y comportamientos (métodos).

1.2. Objetivo: Simplificar el desarrollo de sistemas complejos mediante un modelado análogo a la realidad.

1.3. Enfoque: Centrado en la abstracción, encapsulación, herencia y polimorfismo.

1.4. Su utilidad depende del tipo de sistema a desarrollar.

2. Ventajas del Paradigma POO

2.1. Reutilización de Código

2.1.1. Las clases permiten definir comportamientos comunes que pueden ser reutilizados en diferentes contextos.

2.2. Modelado Análogo a la Realidad

2.2.1. Facilita la representación de sistemas complejos de manera intuitiva.

2.3. Mantenimiento Facilitado

2.3.1. El código está mejor organizado y encapsulado, lo que reduce errores y facilita su modificación.

2.4. Escalabilidad

2.4.1. Ideal para el desarrollo de sistemas grandes y complejos, permitiendo el trabajo en equipo.

2.5. Abstracción

2.5.1. Permite ocultar detalles internos y exponer solo lo necesario mediante interfaces.

3. Elementos Básicos del Paradigma POO

3.1. Objetos

3.1.1. Entidades virtuales con estado (atributos) y comportamiento (métodos)

3.1.2. Ejemplo: El objeto CuentaBancaria tiene atributos como saldo y métodos como retirar().

3.2. Clases

3.2.1. Plantillas o moldes para crear objetos.

3.2.2. Definen atributos y métodos comunes a un conjunto de objetos.

3.2.3. Ejemplo: La clase Reloj define atributos (hora, minuto, segundo) y métodos (set(), incrementar())

4. Propiedades de Objetos y Clases

4.1. Atributos: Datos que representan el estado de un objeto (ejemplo: saldo, color, encendido/apagado)

4.2. Métodos: Funciones que definen el comportamiento de un objeto (ejemplo: obtenerSaldo(), calcularPromedio())

5. VS

5.1. Programación Estructurada

5.1.1. Adecuada para problemas algorítmicos y de flujo de control.

5.2. POO

5.2.1. Adecuada para sistemas complejos que requieren modelado de objetos y organización

6. Ejemplos de Objetos y Clases

6.1. Objeto: Lámpara:

6.1.1. Atributos: intensidad, estado (encendido/apagado). Métodos: encender(), apagar(), estaPrendida().

6.2. Objeto: Contador:

6.2.1. Atributos: valorActual. Métodos: incrementar(), setValor(), getValor().

6.3. Clase: Reloj:

6.3.1. Atributos: hora, minuto, segundo. Métodos: set(), incrementar(), getHora().

6.4. Clase: TarjetaDeCredito:

6.4.1. Atributos: limiteCredito, saldoDeudor. Métodos: efectuarCargo(), calcularIntereses(), generarEstadoDeCuenta().