Você está na página 1de 25

Introduccin a POO

Programacin Orientada a Objetos

Copyright: Vnv JeszyK 2010 jeszy-k@live.com.mx

Identificar objetos

Abstraccin

Identificar el problema

Situacin que la organizacin requiere atender

Anlisis

Diseo

Programacin y pruebas

Sistema en operacin

Introduccin a POO
Abstraccin
*Mecanismo de la mente humana fundamental para la comprensin de fenmenos o situaciones que involucren una gran cantidad de detalles. *El aspecto de destacar los detalles relevantes del objeto de estudio. *El aspecto de ignorar los detalles irrelevantes del objeto.

Introduccin a POO
Dominio del Problema

*Es el foco al que vamos a dirigir nuestra atencin para resolver el problema. *Es importante porque ste nos va a decir que es lo que realmente se requiere.

Introduccin a POO
Modelo Conceptual
*Es un diagrama en el que se representan las entidades existentes en el dominio del problema. *Enfatiza las entidades del dominio del problema y no entidades de software.
Facultad posee Aula

Introduccin a POO
Diferencias
Programacin Estructurada
Se concentra en la lista de acciones secuenciales sobre un conjunto de datos. Indica un lenguaje de programacin.

Programacin Orientada a Objetos


En la POO, los objetos son el pivote de la programacin. Indica una forma de diseo y una metodologa de desarrollo de software. Presta atencin a la interrelacin

Presta atencin al conjunto de final).

acciones que manipulan el flujo de datos (desde la situacin inicial a la

que existe entre los datos y las acciones a realizar con ellos.

Introduccin a POO
Por qu la orientacin a objetos?
*Modela el mundo real. *Simplifica la visin compleja de la realidad. *Mejoras en la forma de diseo, desarrollo y mantenimiento del software. *Portabilidad del cdigo y reusabilidad.

*Cdigo ms fcil de modificar, ciclos de desarrollo ms cortos y tcnicas de codificacin no intuitivas.

Introduccin a POO
Por qu la orientacin a objetos?
*Conceptos comunes de modelado durante el anlisis, diseo e implementacin
* Facilita la transicin entre distintas fases. * Favorece el desarrollo iterativo del sistema. * Disipa la barrera entre el qu y el cmo.

* Sin embargo, existen problemas...

Introduccin a POO
Diseo Orientado a Objetos

* El diseo orientado por objetos (DOO) crea una

representacin del dominio del problema en el mundo real y lo transforma en un dominio de soluciones que es el software.

Introduccin a POO
Qu es un objeto?
* Un objeto es una entidad fsica
Personas Hardware

o abstracta que tiene un comportamiento antes ciertos estmulos, tanto externos como de otros objetos especficos que se encuentran dentro del sistema.

Objetos

Informacin Software Procesos Procedimientos

Introduccin a POO
Tipos de Objetos
Fsicos Reales Psquicos Internamente perceptibles (dolor, sentimientos, imgen)

Extremadamente perceptibles (vista, olfato, gusto, oido)

Objetos

Ideales

No son perceptibles

Relaciones entre objetos, pensamientos matemticos, lgicos

Introduccin a POO
Caractersticas de los Objetos

Propiedades

Comportamiento

Relaciones

Objeto

Atributos

Mtodos

Asociaciones

* Cada objeto tiene su propia identidad que lo distingue de los dems

objetos. En otras palabras, dos objetos distintos no son iguales aunque todos los valores de sus atributos sean idnticos.

Diagrama de clase
Programacin Orientada a Objetos

Diagrama de clase
Definicin
* Tipo de diagrama esttico que describe la estructura de un sistema mostrando sus clases, atributos, mtodos y las relaciones entre ellos.

*
*

Es el ms utilizado y ms conocido de los diagramas orientados a objetos.


Es la fuente de generacin de cdigo.

Diagrama de clase
Partes del diagrama
Ayuda a entender este tipo de objeto en el contexto de otras clases de objetos con roles similares dentro del diseo del sistema.
Comportamiento de una clase de Operaciones objetos
Estereotipos

Permite organizar las clases para simplificar Herencia y facilitar su implementacin Trmino formal para una relacin Asociacin de objetos

Caractersticas de una clase de Atributos objetos

Diagrama de Clase

Diagrama de clase
Clase
* El proceso de clasificacin es el enfoque central de la orientacin por objeto y concierne a la agrupacin de objetos con propiedades (atributos) y comportamiento (operaciones) similares dentro de una clase.
Es la abstraccin de un objeto en un conjunto de atributos y acciones.

Son el patrn de las que luego se pueden crear mltiples objetos del mismo tipo.

Diagrama de clase
Clase Clase
C

Objeto

Gato

Atributos Operaciones Mtodos

+ raza + color + maulla () + come () + duerme ()

new

Diagrama de clase
Declaracin de una clase
* Debe ir en un archivo con extensin .java y el mismo nombre de la clase. [modificadores] class NombreClase [extends ClaseSuperior][implements interfaz1, interfaz2, ] {}

Diagrama de clase
Declaracin de una clase
* * Modificadores. Opcional. Puede ser: public, abstract, final, synchronizable. Class. Palabra reservada que se utiliza para declarar una clase.

*
* * *

Nombre clase. Cualquier identificador vlido.


Extends. Palabra reservada que indica si la clase tiene herencia o es subclase o extensin de una superclase. ClaseSuperior. Nombre de la superclase de la que hereda atributos y comportamientos Implements. Palabra reservada que indica si la clase implementa una o varias interfaces.

Diagrama de clase
Herencia
*
*

Indica que una clase (subclase) hereda los mtodos y atributos de una clase superior (superclase).
La subclase adems de tener sus propios mtodos y atributos, podr acceder a los de su superclase. Una subclase puede modificar los atributos y mtodos heredados.
C C

Persona

Piloto

Pasajeros

Diagrama de clase
Composicin
* Tipo de relacin esttica.
C

Mano

El tiempo de vida del objeto incluido est condicionado por el tiempo de vida del que lo incluye (el objeto superior se construye a partir del objeto incluido, es decir, es parte/todo).

Dedos

Problemas en POO
Programacin Orientada a Objetos

Problemas en POO
Problemas en POO
...Los conceptos bsicos de la OO se conocen desde hace dos dcadas, pero su aceptacin todava no est tan extendida como los beneficios que esta tecnologa puede sugerir ...La mayora de los usuarios de la OO no utilizan los conceptos de la OO de forma purista, como inicialmente se pretenda. Esta prctica ha sido promovida por muchas herramientas y lenguajes que intentan utilizar los conceptos en diversos grados
Wolfgang Strigel

Problemas en POO
Problemas en POO
*Un objeto contiene datos y operaciones que operan sobre los datos, pero podemos distinguir dos tipos de objetos degenerados:

*Un objeto sin datos (que sera lo mismo que una biblioteca de funciones) *Un objeto sin operaciones, con slo operaciones del tipo crear, recuperar, actualizar y borrar (que se correspondera con las estructuras de datos tradicionales)
*Un sistema construido con objetos degenerados no es un sistema verdaderamente orientado a objetos.

Problemas en POO
Problemas en POO

Las aplicaciones de gestin estn constituidas mayoritariamente por objetos degenerados

Você também pode gostar