la programación orientado a objetos. objetivo describir el paradigma de orientación a objetos...
TRANSCRIPT
![Page 1: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/1.jpg)
La Programación Orientado a Objetos
![Page 2: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/2.jpg)
Objetivo
Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño y
programación
![Page 3: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/3.jpg)
Paradigmas de Programación
Hay para todos los gustos Estructurados (C, Pascal, Basic, etc.) Funcionales (CAML) Declarativos (Prolog) Orientados a Objetos (C#, VB.NET, Smalltalk, Java) Orientados a Aspectos Híbridos (Lisp, Visual Basic) Incomprensibles....
Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas
![Page 4: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/4.jpg)
Introducción a la Programación Orientado a Objetos (POO).
Significado de Orientado a Objetos-El significado de Orientado a Objetos nace como un conjunto de practicas que definen un estilo de programación.
- Los seres humanos perciben el mundo como si estuviera formado por objetos: mesas, sillas, computadoras, coches, cuentas bancarias, etc. Donde conciente o inconscientemente tienden a organizarlos, clasificarlos, relacionarlos entre si, y hasta extraen las características más importantes dependiendo de lo que quieren hacer con ellas.
![Page 5: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/5.jpg)
Programación Orientada a Objetos
Definición:La POO es un estilo de programación, donde todos los elementos que forman parte del problema se conciben como objetos, definiendo cuales son sus atributos y comportamiento, como se relacionan entre sí y como están organizadas.
Estructura Interna de un Objeto:
Atributos: Define el estado del objeto
Métodos: Define el comportamiento del objeto
![Page 6: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/6.jpg)
¿Qué es un Objeto?
Definición Formal (Rumbaugh): “Un objeto es un concepto, abstracción o
cosa con un significado y límites claros en el problema en cuestión”
Un objeto posee (Booch): Estado Comportamiento Identidad
![Page 7: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/7.jpg)
Las clases y los objetos están en todas partes
Vehículo
Animal
Figura
![Page 8: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/8.jpg)
El mundo color de Objetos
¿Por qué Orientación a Objetos (OO)? Se parece más al mundo real Permite representar modelos complejos Muy apropiada para aplicaciones de
negocios Las empresas ahora sí aceptan la OO Las nuevas plataformas de desarrollo la
han adoptado (Java / .NET)
![Page 9: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/9.jpg)
Un objeto posee Estado Lo que el objeto sabe El estado de un objeto es una de las
posibles condiciones en que el objeto puede existir
El estado normalmente cambia en el transcurso del tiempo
El estado de un objeto es implementado por un conjunto de propiedades (atributos), además de las conexiones que puede tener con otros objetos
![Page 10: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/10.jpg)
Un objeto posee Comportamiento
Lo que el objeto puede hacer El comportamiento de un objeto
determina cómo éste actúa y reacciona frente a las peticiones de otros objetos
Es modelado por un conjunto de mensajes a los que el objeto puede responder (operaciones que puede realizar)
Se implementa mediante métodos
![Page 11: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/11.jpg)
Un objeto posee Identidad
Cada objeto tiene una identidad única, incluso si su estado es idéntico al de otro objeto
![Page 12: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/12.jpg)
¿Qué es una Clase? Una clase es una descripción de un grupo
de objetos con: Propiedades en común (atributos) Comportamiento similar (operaciones) La misma forma de relacionarse con otros
objetos (relaciones) Una semántica en común (significan lo
mismo) Una clase es una abstracción que:
Enfatiza las características relevantes Suprime otras características (simplificación)
Un objeto es una instancia de una clase
![Page 13: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/13.jpg)
Objetos y Clases
Una clase es una definición abstracta de un objeto Define la estructura y el comportamiento
compartidos por los objetos Sirve como modelo para la creación de objetos
Los objetos pueden ser agrupados en clases
![Page 14: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/14.jpg)
Ejemplo de una Clase Clase: Curso Estado (Atributos)
Nombre Ubicación Días Ofrecidos Horario de Inicio Horario de Término
Comportamiento (Métodos) Agregar un Alumno Borrar un Alumno Entregar un Listado del Curso Determinar si está Completo
![Page 15: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/15.jpg)
ConceptoGeneralmente, una clase se puede definir como una descripción abstracta de un grupo de objetos, cada uno de los cuales tiene una serie de atributos, un estado específico y es capaz de realizar una serie de operaciones.
Clases
Atributos Operaciones Comportamiento
Lavadoramarcamodelocapacidad...
ProgramarPonerRopaCerrarPuertaLavar
![Page 16: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/16.jpg)
Terminología de la POO Clase Objeto Atributos Métodos Instancia Abstracción Encapsulamiento Modularidad Jerarquía Generalización
Herencia Asociación Agregación Polimorfismo Constructor Destructor Miembro Público Miembro Privado Miembro Protegido
![Page 17: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/17.jpg)
Terminología de la POO
Abstracción: La abstracción es la capacidad que permite representar las características esenciales de un objeto sin preocuparse de las restantes características (no esenciales).
Encapsulamiento: Es la propiedad que permite asegurar que los aspectos externos de un objeto se diferencie de sus detalles internos.
![Page 18: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/18.jpg)
Terminología de la POO Modularidad: La modularidad es la propiedad
que permite dividir una aplicación en partes más pequeñas ( llamadas módulos ), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en si y de las
restantes partes.
Jerarquía: Es una clasificación u ordenación
de las abstracciones.
![Page 19: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/19.jpg)
Terminología de la POO Generalización: Una clase que comparte
atributos y métodos similares con otras clases se le llama superclase o clase padre. Cuando definimos una clase padre estamos generalizando.
Herencia: Del mismo modo, cuando definimos una clase a partir de una clase padre estamos creando una subclase. La definición de una subclase se le denomina herencia.
![Page 20: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/20.jpg)
Terminología de la POO Asociación: Una asociación es una relación
semántica entre objetos. Cuando un objeto accede a los atributos y métodos de otro objeto estamos definiendo una asociación entre ellos.
Agregación: La agregación es una relación que define que un objeto es parte de otro objeto. Cuando definimos que un objeto tiene como atributo otro objeto decimos que es una agregación. A través de la agregación se definen objetos compuestos.
![Page 21: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/21.jpg)
Terminología de la POO Polimorfismo: Es el mecanismo de definir un
mismo método en varios objetos de diferentes clases pero con distintas formas de implementación.
Constructor: Es un método que se invoca cuando un objeto es construido
Destructor: Es un método que se invoca cuando un objeto es destruido.
![Page 22: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/22.jpg)
Terminología de la POO Miembro Público: Atributo o método de una
clase que puede ser accesado desde cualquier parte del programa.
Miembro Privado: Atributo o método de una clase que puede ser accesado solo dentro de esa clase.
Miembro Protegido: Atributo o método de una clase que puede ser accesado desde esa clase y sus clases heredadas.
![Page 23: La Programación Orientado a Objetos. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño](https://reader035.vdocuments.co/reader035/viewer/2022062808/56a1889f1a28abe545954847/html5/thumbnails/23.jpg)
EJERCICIO
Describa dos clases y tres objetos por cada clase.
Realice el siguiente ejercicio teniendo en cuenta la metodologi POO
Hacer un programa que al dar la hora (hh, mm, ss), muestre la hora después de 2 horas, 10 minutos y 20 segundos.