Está en la página 1de 23

Unidad I

Introducción a la POO
Introducción a la POO

1. Introducción
Tópicos de la Programación Estructurada:
 En un lenguaje procedimental, un programa es un conjunto de
instrucciones o sentencias.

 Se base en ¿Qué hace este programa?

 Para pequeños programas no se necesita ningún principio de


organización.

 Para grandes programas la cantidad de código se vuelve


inmanejable por lo que este se divide en funciones o subrutinas.

 Si se utiliza correctamente, nos ayuda a mejorar la claridad y el


mantenimiento de los programas.
Introducción a la POO

1. Introducción
Tópicos de la Programación Estructurada:
 Cada función tienen un propósito bien definido.

 Bajo este principio las funciones se agrupan en módulos.

 Utiliza fundamentalmente estructuras secuenciales, selectivas y


repetitivas.

 Lenguajes de programación estructurada: Pascal, C, Fortran, Visual


Basic, Cobol, etc.
Introducción a la POO

1. Introducción
Limitaciones de la Programación Estructurada:
 Acceso ilimitado de las funciones a datos globales.
Gran cantidad de funciones o subrutinas relacionándose entre
si y accediendo a datos globales. Esto sucede básicamente
cuando el programa es extenso en líneas de código, módulos y
funciones.

 Modelo deficiente del mundo real.


Maneja datos y funciones separadas; no es como el mundo
real donde existen objetos, características y comportamientos
de c/u de ellos. Esto lo modela la POO.
Las funciones no modelan el mundo real. La POO si lo hace
combinando las características de los objetos con las acciones
que se realizan sobre ellos.
Introducción a la POO

2. POO
Es un enfoque conceptual para diseñar programas, utilizando un
lenguaje de programación orientado a objetos.

Sus propiedades más importantes son:


 Abstracción.
 Encapsulación y ocultación de datos.
 Polimorfismo.
 Herencia.
 Reusabilidad o reutilización de código.

Este paradigma de programación supera las limitaciones de la


programación tradicional o procedimental. Es otra forma de pensar….
Otra forma de programar.!!!
Introducción a la POO

2. POO
 Su objetivo es modelar el mundo real.

 Se basa en ¿Qué objetos del mundo real puedo modelar? Es decir


que objetos del dominio del problema debo modelar.

 No divide el programa en tareas, sino que abstrae objetos físicos:


autos, libros, biblioteca, cuenta bancaria, equipo de futbol, jugador,
etc.

 Los objetos se pueden agrupar en categorías.

 Las clases describen de forma abstracta a un conjunto de objetos


del mismo tipo o categoría. Es decir los objetos se crean a partir de
una clase determinada.
Introducción a la POO

2. POO

 El paradigma de la POO es encapsular los atributos(características)


y los métodos(operaciones) en cada objeto.

 Un objeto es una cosa del mundo real el cual contiene atributos y


métodos. Ejemplo: Auto

 Un atributo es una característica del objeto. Si hacemos el símil con


la programación estructurada; estos serían las variables. Por lo
tanto tienen un tipo de datos que los respalde. Ejemplo: color
Introducción a la POO

2. POO

 Los métodos son las operaciones que se pueden efectuar sobre los
atributos de un objeto. Si hacemos el símil con la programación
estructurada, estos son las funciones.

 Pero lo interesante es que atributos y métodos están encapsulados


en el objeto como tal.

Ejemplo de Objeto: Auto


Atributos: color, marca, #de placa, cantidad de asientos, etc.
Métodos: acelerar, poner gasolina, encender luces, etc.
Introducción a la POO

3. Fundamentos de la POO
 Un aspecto importante es la ocultación de datos; es decir, se
accede a ellos a través de un método del objeto y nunca
directamente.

 Un sistema orientado a objetos, contiene un número finito de


objetos cada uno con sus propios atributos y métodos.

 Se ayuda de la reusabilidad de código. Programas ya construidos


que puedo utilizar simplemente invocándolos.
Introducción a la POO

3. Fundamentos de la POO
Objeto:
 Compuesto por atributos y métodos.
 No necesariamente es tangible. Puede ser un auto o un equipo de
fútbol entre otros.

Mundo Real: Cosa Programa: objeto

Representa
Introducción a la POO

3. Fundamentos de la POO
TAD: Clases
 Un avance en la programación, se dio cuando en una sola
estructura se pudieron almacenar una serie de datos. Si embargo
siempre estaban independientes de las operaciones que actúan
sobre ellos (no se modela mundo real).

 Sin embargo los TAD no solo describen los atributos de los objetos,
sino que también las operaciones que actúan sobre ellos.

 En POO un TAD es una Clase. Es decir una clase describe los


atributos y métodos de un objeto.
Introducción a la POO

3. Fundamentos de la POO
Instancias:
¿Pero entonces objeto es lo mismo que clase?
Para que nos quede claro:
 Una clase describe un objeto, pero en la practica describe múltiples
objetos del mismo tipo.
 ¿Porque? En POO una clase es un Tipo de Dato.
 Y las variables de este tipo se denominan instancias.

Creación de Objetos Instancias


Molde(Clase Auto)
Introducción a la POO

3. Fundamentos de la POO
Métodos:
 Es una operación(función) sobre un objeto.

 Para llamar un método de un objeto se le envía un mensaje al


objeto.

 En la practica un programa orientado a objetos es una secuencia


de operaciones de los objetos que actúan sobre sus propios datos.
Introducción a la POO

3. Fundamentos de la POO
Ventajas:
 Modela los sistemas de acuerdo al mundo real.

 Comprende todas las etapas de proceso solucionador de


problemas.

 Se ha convertido en el estándar a nivel mundial en desarrollo de


SW.

 Imprescindible para gestionar programas complejos.

 Los lenguajes de programación modernos son orientados a


objetos: Java, PHP, Python, Visual Basic.NET, entre otros.
Introducción a la POO

4. Lenguaje de Modelado UML


 El lenguaje unificado de modelado(Unified Modeling Language),
es el estándar de modelado para desarrollo de sistemas y de SW.

 Un modelo es una abstracción de cosas reales.

 Tiene diagramas de propósitos específicos(diagramas de tiempo) y


otros genéricos(diagramas de clases).
Introducción a la POO

4. Lenguaje de Modelado UML


Ventajas:
 Mejora notablemente el diseño de SW.

 Modela de forma real los diversos proceso de negocios.

 Captura de detalles acerca de un sistema, proceso u organización


en análisis de requisitos.

 Nos provee gran cantidad de herramientas para la documentación


de Sistemas.
Introducción a la POO

4. Lenguaje de Modelado UML


Ámbitos de Aplicación:
 Banca

 Salud

 Defensa

 Computación Distribuida.

 Sistemas en Tiempo Real, etc.


Introducción a la POO

4. Lenguaje de Modelado UML


Modelo
 Un modelo simplifica la realidad a través de abstracción.
 El modelo trata de capturar las partes esenciales del sistema.
 El modelo se representa por notación gráfica.
 Un modelo consta de notación(símbolos) y reglas(como utilizar los
símbolos)
 Las reglas pueden ser Sintácticas(como se utilizan los símbolos),
Semánticas(que significan los símbolos) y Pragmáticas(intención
de los símbolos).
 Tienen dos características importantes. Una estructura
estática(descripción de objetos) y estructura dinámica(ciclo de
vida e interacción de los objetos).
Introducción a la POO

4. Lenguaje de Modelado UML


Más ventajas de UML:
 UML es independiente del lenguaje de programación.
 Es formal.
 Es conciso.
 Es comprensible y completo.
 Es escalable.
 Esta construido en la filosofía de “lecciones aprendidas”, a traves
de las mejores practicas en la orientación a objetos.
 Esta avalado por la OMG(Object Management Group) una
organización reconocida a nivel mundial.
Introducción a la POO

4. Lenguaje de Modelado UML


Diagramas Estructurados:
Se utilizan para capturar la organización física de los objetos y el envío
de mensajes entre ellos. Podemos mencionar:
 Diagramas de Clases.
 Diagramas de Componentes.
 Diagramas de Despliegue.
 Diagramas de Objetos.
Introducción a la POO

4. Lenguaje de Modelado UML


Diagramas de Comportamiento:
Describe el comportamiento de los diversos objetos del sistema que
se modela. Podemos mencionar:
 Diagramas de Casos de Uso.
 Diagramas de Actividad.
 Diagramas de Comunicación.
 Diagramas de Interacción.
 Diagramas de Secuencia.
 Diagramas de Estado.
 Diagramas de Tiempo.
Introducción a la POO

4. Lenguaje de Modelado UML


Simbología:

Nombre del objeto auto

- Color
atributos
- # placa
- # asientos

métodos - Acelerar
- Poner gasolina
- Encender luces
Introducción a la POO

4. Lenguaje de Modelado UML autoDeJuan


Simbología: - Color: rojo
Instancia 1
- # de placa: P236
- # asientos: 6
Creación de Objetos
Molde: Clase Auto - Acelerar
- Poner gasolina
- Encender luces

autoDeMaria

- Color: amarillo
- # de placa: P564
- # asientos: 4

Instancia 2 - Acelerar
- Poner gasolina
- Encender luces