Introducción a la Programación Orientada a Objetos (POO)

Slides:



Advertisements
Presentaciones similares
Unidad 3 Lenguajes .Net y POO
Advertisements

Instituto Universitario de Gerencia y Tecnología N - Análisis de Sistemas DIAGRAMA DE CLASES INTEGRANTES: LEIVYS MAZA Informática Mención 205 Profesor:
Programación Orientada a Objetos
Curso de Java Capitulo 7: Continuación Poo Profesor:
PROGRAMACION ORIENTADA A OBJETOS
Diagrama de Clases Por: Ing. Juan Carlos Contreras Villegas
Tomado de:
UML 1.4 Peter Emerson Pinchao Solis.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Arquitectura CLARO-TECNOTREE
Introducción a la Orientación a Objetos
Programación Orientada a Objetos (P.O.O.)
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
La Programación Orientado a Objetos
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
LENGUAJE UNIFICADO DE MODELADO UML
Diagrama de CLASES Alfredo Rodríguez Rojas
ORIENTADO A OBJETOS ESTUDIANTE JESSICA LORENA LEAL MEDINA INGENIERIA DE SOFTWARE PROGRAMA INGENIERIA DE SISTEMAS UNIVERSIDA COOPERATIVA DE COLOMBIA NEIVA-HUILA.
Programación Orientada a Objetos.
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
UNIDAD I. INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS EN JAVA.
DIAGRAMA DE CLASE.
PROGRAMACION ORIENTADA A OBJETOS
Análisis y Diseño orientado a objetos con UML.
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Desarrollo de Aplicaciones Basadas en Windows Programación Orientada a Objetos Jimena A. Timaná P. Octubre, 2006.
Introducción a la programación Orientada a objetos
Tema 10: Interfaces Antonio J. Sierra.
* FRAUSTO JIMENEZ GABRIELA * * HERNANDEZ TORRES ANA LAURA * * MANDUJANO JUAN CARLOS * * NOVA MARIN YARELI PAULINA * * ZAVALA CORTE JOCELYN ARELI *
Diagramas de Clase Angela Carrillo R..

Fundamentos de programación
Programación Orientada Objetos
DEFINICIÓN  Es una forma de entender un problema identificando las entidades principales que se encuentran en el.  Es una forma de desarrollar un sistema.
Clase 03 ELEMENTOS DE COMPUTACIÓN Contenidos Objeto Clase Atributo Método Instancia Herencia Polimorfismo UML.
DIAGRAMAS ENTIDAD RELACIÓN
Diagrama de Clases ACI 570.
Diagrama de CLASES Alfredo Rodríguez Rojas
Programación Orientada a Objetos (P.O.O.)
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
TEMA 9: DIAGRAMA DE CLASE EN UML
Programación Orientada a Objeto
Clasificación de Diagramas
UML.
DIAGRAMA DE CLASES.
(Lenguaje Unificado de Modelado)
UML Casos de Uso (repaso) y Diagramas de Clase
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
Programación Orientada a Objetos. Es importante aclarar desde un principio la diferencia que existe entre programación orientada a objetos y un lenguaje.
PROGRAMACIÓN ORIENTADA A OBJETOS
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
UNIVERSIDAD TECNOLÓGICA DE IZÚCAR DE MATAMOROS TECNOLOGÍAS DE LA INFORMACION Y COMUNICACIÓN BASE DE DATOS PARA APLICACIONES MTRO. GONZALO ROSAS CABRERA.
Análisis y Diseño de Aplicaciones 3º Educación Media Tecnológica
ORIENTACIÓN A OBJETOS El paradigma.
La Programación Orientado a Objetos
Diagrama de Clases.
Paradigma Orientado a Objetos
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
Fundamentos de Ingeniería de Software
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
2015-BM5A. Introducción Durante años, los programadores se han dedicado a construir aplicaciones muy parecidas que resolvían una y otra vez los mismos.
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
Modelado UML Diagrama de Clases
Diagrama de clases Silvia Herzovich Rodrigo Aronas Matias Silversteyn.
Técnica de programación que utiliza abstracciones de la vida real (Objetos) como bloque esencial de construcción.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar los.
Transcripción de la presentación:

Introducción a la Programación Orientada a Objetos (POO) M.S.C. Ivette Hernández Dávila

Propiedades y comportamiento de los objetos ¿Qué es un objeto? Ejemplo: Si vamos a un aeropuerto. Éstos objetos tienen propiedades o atributos en común: poseen motor, ruedas y asientos, pero también se diferencian; es decir, tienen un comportamiento propio.

Definición de Objeto Entidad compleja provista de propiedades (datos, atributos) y comportamiento (funcionalidad, métodos). Cada objeto expone una interfaz a otros objetos que especifica cómo éstos pueden interactuar con él. Esta interfaz está dada por un conjunto de métodos; así es como la interfaz del automóvil estará formada por los métodos “arranca”, “frena”, “dobla”, etc., a través de los cuales podemos interactuar con el objeto.

Representación del objeto Auto motor ruedas asientos arranca() frena() dobla() nombre del objeto atributos métodos El comportamiento es exclusivo del objeto; si bien algunos objetos a simple vista son iguales, internamente pueden ser muy distintos. Esto se conoce como encapsulamiento: los objetos presentan la misma interfaz pero ocultan información de su funcionamiento.

Encapsulamiento El encapsulamiento protege también al objeto de usos indebidos e inapropiados. El automóvil utilizará otros mecanismos para llevar a cabo su interfaz, como, por ejemplo, abrir válvulas, mover pistones, etc., que no les permitirá usar a otros objetos. Auto motor ruedas asientos arranca() frena() dobla() Conductor abrirValvulas() moverPistones()

Herencia Cuando definimos un objeto lo hacemos en función de otros objetos conocidos. En el ejemplo del automóvil, podría decir “es como un taxi, pero más chico”, o “es como una moto, pero tiene cuatro ruedas”. Sin darnos cuenta hacemos clasificaciones. Esto se conoce como herencia, y sirve para no tener que definir comportamientos de forma repetitiva.

Ejemplo Tendremos un objeto transporte, que tendrá propiedades como cantidad de pasajeros, cantidad de puertas, etc., y métodos como arranca, frena y dobla. De esta manera definiríamos un automóvil como un transporte, agregando las particularidades del automóvil que no estén definidas en transporte. Al agregar el objeto avión definido como un transporte, heredará de éste las propiedades (cantidad de pasajeros, cantidad de puertas) y los métodos (anda, frena y dobla).

Polimorfismo Notamos que no es lo mismo hacer andar un automóvil que un avión, de forma tal que necesitamos agregar el método arranca en automóvil, para que ruede, y en avión para que vuele. Esto se denomina polimorfismo, y nos permite tener muchas formas de comportamiento; o sea que la referencia al método arranca producirá el comportamiento correcto según el objeto al que se lo esté ordenando.

Comunicación entre los objetos Para ordenarle a un objeto que haga algo, debemos mandarle un mensaje. A través de los mensajes establecemos la comunicación entre los objetos de forma tal que les ordenamos ejecutar un método con algunos parámetros.

Árbol de Jerarquía de herencia Encontramos una nueva agrupación de nivel superior. En resumen, los objetos se agrupan en clases, y las clases, en árboles, siempre y cuando reflejen un comportamiento común. Transporte

Árbol de Jerarquía de composición El automóvil, aparte de ser un objeto y además de ser un transporte, también está compuesto por más objetos con comportamientos distintos. Se denomina jerarquía de composición, y sirve para representar uno o varios objetos que están dentro de otro que los contiene.

Instancia Si tenemos un solo objeto automóvil, no significa que nuestro programa podrá tener un solo automóvil. El concepto de instancia, nos permite crear la cantidad de automóviles que deseemos. Por ejemplo, si nuestro objeto automóvil tiene una propiedad color, podemos tener instancias de automóvil con la propiedad color en rojo, azul o verde. Para lograr esto, cada objeto deberá tener un método, que nos permita crear una instancia de éste.

Modelado de la POO Existe diversidad de herramientas que ayudan al modelado de la programación orientada a objetos a través de estándares. Una de las más utilizadas es la de UML. UML usa como herramientas los diagramas gráficos para representar el sistema. Éstos son: Diagrama de clases. Diagrama de comportamiento. Diagrama de casos de uso. Diagramas de implementación.

Diagramas de Clases Un diagrama de clases sirve para visualizar las relaciones entre las clases que involucran el sistema, las cuales pueden ser asociativas, de herencia, de uso y de agregación. Un diagrama de clases esta compuesto por los siguientes elementos: Clase: atributos, métodos y visibilidad. Relaciones: Herencia, Composición, Agregación, Asociación y Uso.

<Operaciones o Métodos> Representación En UML, una clase es representada por un rectángulo que posee tres divisiones: <Nombre Clase> <Atributos> <Operaciones o Métodos>

Ejemplo Clase Una Cuenta Corriente que posee como características: Balance Numero ID. Puede realizar las operaciones de: Depositar sacarDinero y consultarBalance.

Atributos y Métodos Los llamaremos miembros de la clase. Sus accesos pueden ser de cuatro diferentes tipos que definen el grado de comunicación y visibilidad de ellos con el entorno, estos son: public (+, ): Indica que el atributo será visible tanto dentro como fuera de la clase ya sea fuera o dentro del paquete. private (-, ): Indica que el atributo sólo será accesible desde dentro de la clase (sólo sus métodos pueden manipularlo). protected (#, ):Será accesible desde las clases que se encuentren en el mismo paquete así como en todos sus subclases. Aunque las subclases que se encuentren fuera del paquete sus objetos o instancias no los podrán manipular. Friendly ( ): Indica que el atributo será accesible desde cualquier otra clase que se encuentre en el mismo paquete.

Relaciones Es necesario explicar el concepto de cardinalidad de relaciones: En UML, la cardinalidad de las relaciones indica el grado y nivel de dependencia, se anotan en cada extremo de la relación y éstas pueden ser: uno o muchos: 1..* (1..n) 0 o muchos: 0..* (0..n) número fijo: m (m denota el número).

Herencia Indica que una subclase hereda los métodos y atributos especificados por una superclase, de esta forma la subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la superclase (public y protected), ejemplo:

Composición Es un tipo de relación estática, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye.

Agregación Es un tipo de relación dinámica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye.