Sunteți pe pagina 1din 31

Conceptos sobre la Programacin Orientada a Objetos

Mdulo 2a

Conceptos sobre la POO

Caractersticas de un objeto
Un objeto tiene:
Identidad: un identificador unvoco. Estado: un conjunto de propiedades (atributos). Comportamiento: un conjunto de operaciones (mtodos).

Los trminos objeto e instancia son intercambiables.


Conceptos sobre la POO 3

Conceptos sobre la POO

Conceptos sobre la POO

Conceptos sobre la POO

Definicin de atributo
Es una caracterstica fundamental de cada objeto de una clase. Una clase puede definir un cierto nmero de atributos estticos. Todos los atributos tienen algn valor. Este valor puede ser una cantidad, una relacin con otro objeto, etc.

Conceptos sobre la POO

Definicin de mtodo
Es una accin que se realiza sobre un objeto para consultar o modificar su estado. Tipos de operaciones:
Modificador (setter): altera el estado de un objeto. Selector (getter): accede al estado de un objeto sin alterarlo. Iterador: permite acceder a todas las partes de un objeto. Constructor: crea un objeto e inicializa su estado. Destructor: limpia el estado de un objeto y lo destruye. Propsito general: la lgica del programa.
Conceptos sobre la POO 8

Conceptos sobre la POO

Interfaz
Es el aspecto externo del objeto. La parte visible y accesible para el resto de objetos. Tambin se le define como el protocolo de comunicacin de un objeto. Puede estar formado por uno o varios mtodos. No todos los mtodos de un objeto tienen porque formar parte del interfaz.

Conceptos sobre la POO

10

Definicin de clase
Una clase es la representacin de la estructura y comportamiento de un objeto Es un patrn para la definicin de atributos y mtodos para un tipo particular de objetos. Todos los objetos de una clase dada son idnticos en estructura y comportamiento pero son nicos (aunque tengan los mismos valores en sus atributos). Instancia es el trmino utilizado para referirse a un objeto que pertenece a una clase concreta.
Conceptos sobre la POO 11

Conceptos sobre la POO

12

Conceptos sobre la POO

13

Clases vs. Objetos


Clase:
Un patrn para la definicin del estado y el comportamiento de un tipo particular de objetos. Todos los objetos de una clase dada son idnticos en estructura y comportamiento, pero tienen identidad nica.

Objeto (instancia):
Pertenece a una clase en particular. Los objetos son creados y destruidos en tiempo de ejecucin. Residen en el espacio de memoria.
Conceptos sobre la POO 14

Conceptos sobre la POO

15

Paradigmas de la Orientacin a Objetos.


Los paradigmas de la Orientacin a Objetos son:
Encapsulacin. Ocultamiento. Abstraccin. Herencia. Polimorfismo.

Cualquier lenguaje O.O. debe implementar estos conceptos.


Conceptos sobre la POO 16

Abstraccin
Consiste en la generalizacin conceptual de los atributos y comportamiento de un determinado conjunto de objetos. La clave de la programacin O.O. est en abstraer los mtodos y los datos comunes a un conjunto de objetos y almacenarlos en una clase. Hay que centrarse en lo que es y lo que hace un objeto, entes de decidir cmo debera ser implementado.
Conceptos sobre la POO 17

Encapsulacin y ocultamiento
Consiste en separar el aspecto externo del objeto, al cual pueden acceder otros objetos, del aspecto interno del mismo, que es inaccesible para los dems. Permite tratar a un objeto como una caja negra. Permite que se modifique la implementacin interna de un objeto sin afectar a los clientes que lo utilizan.
Conceptos sobre la POO 18

Relaciones
Las clases no existen aisladas sino que tienen dependencias entre ellas. Los distintos tipos de relaciones son:
Asociacin. Agregacin y Composicin. Herencia. Relaciones dinmicas: Mensajes.

Conceptos sobre la POO

19

Relacin de asociacin
Representa la dependencia ms general entre clases. Por defecto es bidireccional, aunque se puede restringir a una sola direccin. Tiene multiplicidad. Es la propiedad que expresa el nmero de instancias de cada clase que participa en la relacin: Representa una dependencia semntica entre dos clases. (0..1, 1, 0..*, 1..*)
Conceptos sobre la POO 20

Conceptos sobre la POO

21

Relacin de agregacin
Es una forma particular de asociacin que expresa un acoplamiento mas fuerte entre objetos. Indica que los objetos de una clase contienes o estn formados por objetos de otras clases. No siempre precisa contencin fsica. Por tanto, un objeto que representa el .todo., est asociado con un conjunto de objetos que representan sus componentes.
Conceptos sobre la POO 22

Relacin de composicin
Se trata de una relacin de agregacin fuerte. Un objeto no puede existir si no existen los objetos de los que est compuesto.

Conceptos sobre la POO

23

Conceptos sobre la POO

24

Relacin de herencia
Se basa en la existencia de relaciones de generalizacin/especializacin entre clases. Las clases se disponen en una jerarqua, donde una clase hereda todos los atributos y operaciones de las clases superiores en la jerarqua. Una clase puede tener sus propios atributos y operaciones adicionales a lo heredado. Una clase puede modificar los atributos y operaciones heredadas.
Conceptos sobre la POO 25

Relacin de herencia
Las clases por encima en la jerarqua a una clasedada, se denominan superclases. Una clase puede ser superclase y subclase al mismo tiempo. Las clases por debajo en la jerarqua a una clase dada, se denominan subclases. Tipos de herencia:
Simple. Mltiple (no soportada por todos los lenguajes O.O.)
Conceptos sobre la POO 26

Conceptos sobre la POO

27

Relacin dinmica: mensaje


Un mensaje es un comando o peticin que se le enva a otro objeto. Requiere el conocimiento previo del interfaz del objeto receptor. Que es dinmica significa que se observa en ejecucin, no en el diseo.

Conceptos sobre la POO

28

Conceptos sobre la POO

29

Polimorfismo
Permite implementar mltiples formas de un mismo mtodo, dependiendo cada una de ellas de la clase sobre la que se realice la implementacin. Esto posibilita desencadenar operaciones diferentes en respuesta a un mismo mensaje, en funcin del objeto que lo reciba.
Conceptos sobre la POO 30

>>>
Conceptos sobre la POO 31

S-ar putea să vă placă și