programación orientada al objeto

Post on 09-Jul-2015

684 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Unidad 1 Programación orientada al objeto

TRANSCRIPT

PROGRAMACIÓN

ORIENTADA AL OBJETO

MARIO CASTILLO ROMO

INGENIERO INFORMÁTICO

CalificacionesFecha Porcentaje Tipo

29/08/2012 5 Control 1

12/09/2012 20 Solemne 1

10/10/2012 5 Control 2

31/10/2012 20 Solemne 2

21/11/2012 5 Control 3

12/12/2012 10 Tareas

12/12/2012 35 Solemne 3

19/12/2012 - Recuperativa

Programación estructurada

• El programa completo tiene un diseñomodular.

• Los módulos se diseñan con metodologíadescendente (puede hacerse tambiénascendente).

• Cada módulo se codifica utilizando las tresestructuras de control básicas: secuenciales,selectivas y repetitivas

• Estructuración y modularidad son conceptoscomplementarios.

Programación Orientada al objeto

• Un objeto, es una abstracción de un

conjunto de cosas del mundo real.

• El objeto posee funcionalidades.

• El objeto posee características que

pueden ser usadas en forma

independiente, pero juntas se

complementan.

Características de POO

Programación Orientada al objeto

Programación Orientada al objeto

POO V/S Estructurada

POO V/S Estructurada

• Los lenguajes de programación estructurada:

– Están orientados a acciones.

– La unidad de programación es la función.

• La programación orientada a objetos:

– Encapsula datos (atributos) y métodos

(comportamiento) en objetos que están

relacionados entre sí.

– La unidad de programación es la clase.

Comunicación entre Objetos

• Cuando se produce un evento, el objeto

receptor sabe cuál es el objeto emisor,

qué evento se produjo y el valor de los

datos asociados con dicho evento.

Comunicación entre Objetos

Estructura interna de un Objeto

• Un Objeto esta compuesto por:

– Atributos

– Métodos

• Atributos, describen el estado del objeto yesta compuesto de un nombre y un valor

• Métodos, Son las operaciones o serviciosque describen el comportamiento delObjeto

Herencia

• La herencia es la propiedad que permite alos objetos construirse a partir de otrosobjetos.

• Permite pasar de una clase a otra, ciertascaracterísticas, métodos, parámetros,funciones y atributos de una clase, entredos objetos con relación.

• Permite el ahorro de código y lacombinación de clases.

Ejemplo de Herencia

Sobrecarga

• Una Clase puede tener mas de 1

constructor.

• Los Constructores se diferencian por

cantidad, tipo y orden de parámetros.

Polimorfismo

• Es la capacidad que tienen los Objetos de

una clase de responder al mismo mensaje

o evento en función de los parámetros

utilizados durante su invocación.

Polimorfismo

Modularidad

• Es la división de un sistema en módulos,

los cuales se comunican entre si.

• La unidad de modular es la Clase

• Ej. Una casa

– Modulo o Clase Calefacción, alcantarillado,

agua, electricidad, gas, etc.

Abstracción en lenguajes de

programación

• La abstracción consiste en captar las

características esenciales de un objeto,

así como su comportamiento.

• Cuando se diseña un modelo orientado a

objetos es útil introducir clases a cierto

nivel que pueden no existir en la realidad

pero son construcciones conceptuales

útiles.

Relaciones entre clases

• Una relación es una conexión semántica

entre clases

• Permite que una clase conozca sobre los

atributos, operaciones y relaciones de

otras clases.

Relaciones entre clases

• Existen varios tipos de relaciones:

– Asociación

– Agregación

– Generalización

– Especialización

Asociación

• Es una conexión conceptual entre clases

• Una asociación es una abstracción de los

enlaces que existen entre instancias de

objetos

Asociación

Agregación

• Es un tipo especial de asociación que

expresa un acoplamiento mas fuerte entre

clases.

• Las agregaciones representan conexiones

bidireccionales y asimétricas.

• Permite la representación de relaciones

tales como maestro y esclavo, todo y

parte de, compuesto y componentes.

Agregación

Herencia

• La herencia es la propiedad que permite a

los objetos construirse a partir de otros

objetos.

• Permite pasar de una clase a otra, ciertas

características, métodos, parámetros,

funciones y atributos de una clase, entre

dos objetos con relación.

• Permite el ahorro de código y la

combinación de clases.

Generalización

• Es la que realizamos cuando tenemos

muchas clases que comparten

funcionalidades y por homogeneizar las

partes comunes se decide crear una clase

que implemente toda esa parte común y

se dejan solo las partes especificas en

cada clase.

Generalización

Especialización

• Es la que se realiza cuando necesitamos

crear una clase nueva que disponga de

las mismas características que otra pero

que le añada funcionalidades.

Especialización

Excepciones

Excepciones

Excepciones

top related