Está en la página 1de 29

Julian Rodriguez Perez Manuel Montaez Kerly Mantilla Mildred Arango

La Programacin Orientada a Objetos, POO (OOP, Object Oriented Programming), es una tcnica de programacin cuyo soporte fundamental es el objeto. Un objeto es una extensin de un Tipo Abstracto de Datos (TAD). Un TAD es un tipo definido por el usuario, que encapsula un conjunto de datos y las operaciones sobre estos datos.

Definicin de objeto:

Es un conjunto complejo de datos y programas que poseen estructura y forman parte de una organizacin.

PROGRAMACION ORIENTADA A OBJETOS vs. PROGRAMACIN ESTRUCTURADA

Programacin estructurada

Ecuacin Writh

Algoritmos + estructura de datos =programa Datos y cdigo se tratan por separado, se realizan funciones o procedimientos que tratan estos datos y los van pasando de unos a otros hasta obtener el resultado.

OOP

La programacin orientada a objetos unen datos y procesos, Un objeto adems de un estado interno, presenta una interfaz para poder interactuar con el exterior.

LOS PRINCIPIOS PROPIOS DE LA ORIENTACIN A OBJETOS


Abstraccin de Datos Encapsulamiento

Ocultamiento
Herencia Polimorfismo

CONCEPTOS BSICOS DE LA ORIENTACIN A OBJETOS Clase: Las clases son abstracciones que
representan a un conjunto de objetos con un comportamiento e interfaz comn.

Es la implementacin de un tipo de objeto (considerando los objetos como instancias de las clases)".

OBJETO

Un objeto es una cosa, generalmente extrada del vocabulario del espacio del problema o del espacio de la solucin. Todo objeto tiene un nombre, un estado y un comportamiento

Porque Orientar a Objetos(OO)?


Se parece mas al mundo real Permite representar modelos completos Muy apropiada para aplicaciones de negocio Las empresas ahora si aceptan la OO Las nuevas plataformas de desarrollo la han adoptado(Java/.Net)

Que es lo que ves ?

Que es lo que ves ?

Que es lo que tienen en comn?

ATRIBUTO Y METODO

Atributo: Es una caracterstica concreta de una clase. Por ejemplo atributos de la clase Coches pueden ser el Color, el Numero de Puertas Mtodo: Es una operacin concreta de una determinada clase. Por ejemplo de la clase Coches podramos tener un mtodo arrancar() lo que hace es poner en marcha el coche.

INSTANCIA
Instancia:

Es una manifestacin concreta de una clase (un objeto con valores concretos). Tambin se le suele llamar ocurrencia. Por ejemplo una instancia de la clase Coches puede ser: Un Ford Mustang, de color Gris con 3 puertas

UML (Unified Modeling language)


Lenguaje de modelado visual de propsito general..

Usos: Especificar, visualizar, construir y documentar artefactos de un sistema de software..


Es solamente un lenguaje por lo que es slo una parte de un mtodo de desarrollo software.

CARACTERISTICAS DE UML

Utilizado en prcticamente todas las etapas del desarrollo de software (basado en Proceso Unificado)

Incluye conceptos semnticos, notacin y reglas de creacin de cada diagrama


Permite capturar informacin acerca de la estructura esttica y el comportamiento dinmico de un sistema.

QUE NO ES UML ?

UML no es un lenguaje de programacin UML no es una metodologa

DIAGRAMAS DE UML

Casos de Uso Clases Objetos Estados Actividad Secuencia Colaboracin

Componentes
Despliegue

DIAGRAMA DE CLASES

El diagrama de clases representa la vista esttica de un sistema software.

Los elementos que aparecen en este diagrama son aquellos conceptos que tienen significado dentro de una aplicacin

DIAGRAMA DE CLASES

Elementos principales de este diagrama: *Clasificadores: elementos que describen *Relaciones: entre clasificadores cosas

La definicin de cada concepto del mundo real se identifica con una clase de este diagrama.

DIAGRAMA DE CLASES

Diagrama de Clases: Elementos Atributo


Los atributos describen a una clase. Pueden ser Pblicos, Privados o Protegidos. public (+, ): Indica que el atributo ser visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.

private (-, ): Indica que el atributo slo ser accesible desde dentro de la clase (slo sus mtodos lo pueden acceder). protected (#, ): Indica que el atributo no ser accesible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de las subclases que se deriven (herencia)

Diagrama de Clases: Elementos Operaciones (mtodos)

Las operaciones o mtodos de una clase describen la forma en la cual sta interacta con su entorno. Pueden ser Pblicas, Privadas o Protegidas. public (+, ): Indica que el mtodo ser visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.

private (-, ): Indica que el mtodo slo ser accesible desde dentro de la clase (slo otros mtodos de la misma clase lo pueden acceder). protected (#, ): Indica que el atributo no ser accesible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de las subclases que se deriven (herencia)

RELACIONES ENTRE CLASES

Agregacin: Relacin entre un todo y sus partes. Lgica: la partes puede pertenecer a varios agregados

todo

parte

UML TIPOS

Tipos de relaciones: Herencia Relacin de herencia entre dos clases. Responde a la pregunta es un?

Asociacin: Relacin simple, cuando no es ninguna de las anteriores

UML - MULTICIPLIDAD

Los roles tambin nos dice los objetos que intervienen en la relacin a travs de la multiplicidad o cardinalidad. Valores convencionales de multiplicidad: 1 : Uno y slo uno 0..1 : Cero o uno M..N : De M a N (siendo N y M enteros naturales) * : De cero a muchos 0..* : De cero a muchos 1..* : De uno a muchos

UML - MULTICIPLIDAD

Las multiplicidades se aplicarn segn el significado que tengan los objetos en nuestro modelo. Un reloj tiene que estar obligatoriamente en manos de una persona y a su vez una persona puede tener de cero a varios relojes

Diagrama de Clases: Elementos Responsabilidades


La distribucin de responsabilidades en un sistema, se realiza identificando un conjunto de clases que colaboran entre s para llevar a cabo algn comportamiento. Luego hay que identificar el conjunto de responsabilidades para cada clase

Diagrama de Clases

CASO PRACTICO UML