programaciÓn orietada a objetos. 2 introducción paradigma: ejemplo ilustrativo, enunciado modelo ...
TRANSCRIPT
![Page 1: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/1.jpg)
PROGRAMACIÓN ORIETADA A OBJETOS
![Page 2: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/2.jpg)
2
Introducción
Paradigma: Ejemplo ilustrativo, enunciado modelo
Programación imperativa
Programación funcional
Programación lógicaNuevo Paradigma:
Programación orientada a objeto (POO).
![Page 3: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/3.jpg)
3
Programación Procedimental
Procedimiento 1
Procedimiento 2
Procedimiento 3
DATOS
![Page 4: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/4.jpg)
4
Programación Orientada a Objetos
Métodos
DATOS
Métodos
DATOS
Métodos Métodos
DATOS DATOS
![Page 5: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/5.jpg)
5
Facilita la creación de software de calidad por sus factores que potencian:
El mantenimiento
La extensión y
La reutilización del software generado bajo este paradigma.
La POO se basa en la idea natural de la existencia de un mundo lleno de objetos y que la resolución del problema se realiza en términos de objetos.
POO
![Page 6: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/6.jpg)
6
La visión de Objetos:
MesasSillasComputadoresAutosCuentas bancariasPartidos de fútbolPerros, etc
POO
![Page 7: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/7.jpg)
7
Los objetos se pueden Organizar según su necesidad
Mamíferos : Perros, Gatos Electrodomésticos : Refrigerador,
Microondas Deportes : Fútbol, Tenis Vehículos : Autos, Camiones
POO
![Page 8: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/8.jpg)
8
METODOLOGÍA
![Page 9: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/9.jpg)
9
La base de esta tecnología es:
Modelar
con base en
Entidades
Los problemas que se desean resolver
Relevantes y tangibles en el problema.
Modelamiento
![Page 10: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/10.jpg)
10
Abstracción
El modelo define una perspectiva abstracta del problema
Los datos que son afectados
Las operaciones que se aplican sobre los datos
![Page 11: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/11.jpg)
11
Ejemplo
Para la administración docente, las entidades que participan son:
Administr. Docente
Profesores
Asignaturas
Alumnos
Salas
![Page 12: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/12.jpg)
12
POO
Identificar los objetos importantes
Organizar los objetos en jerarquías
Otorgar atributos relevantes a los
objetos, que describirán las
características de ellos.
Agregar funciones a los objetos para
realizar las tareas necesarias
![Page 13: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/13.jpg)
13
Conceptos de la POO
Conceptos fundamentales que sustentan la POO
Clase
Objeto
Instancia
Atributos
Métodos
La POO trata de amoldarse al modo de pensar del hombre y no al de la máquina
![Page 14: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/14.jpg)
14
Clase
Una clase es como un tipo de dato creado por el usuario, que posee campos:
Atributos: Datos, EstadoMétodos: Comportamiento
![Page 15: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/15.jpg)
15
Clase
En general, podemos crear una clase inspirados en cualquier objeto que esté a nuestro alrededor, como puede ser:
PersonaAutoMascota
![Page 16: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/16.jpg)
16
Instancias-Objetos
Una Instancia es una ocurrencia de la clase.
Al momento de crear un objeto se produce la instanciación
Un Objeto es una instancia de una Clase específica.
![Page 17: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/17.jpg)
17
Instancias-Objetos
EJEMPLO:
Supongamos que existe una clase Perro.
Mi mascota Sam, es una instancia de esa clase, ie, un objeto de tipo Perro.
El perro Jack de mi vecina es una instancia de
la misma clase Perro y, en consecuencia, otro objeto del mismo tipo.
![Page 18: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/18.jpg)
18
Atributos
Son aquellas características que le asociamos a un tipo de objeto (clase) y que darán cuenta del estado del objeto.
Raza Edad Color Nombre del dueño, etc
![Page 19: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/19.jpg)
19
Métodos
Representan todas aquellas acciones que puede realizar o se pueden llevar a cabo sobre un objeto de una clase.
En la implementación, estos métodos son segmentos de código similares a los procedimientos y funciones utilizadas en la programación modular.
La clase Perro puede tener los métodos: Correr, Comer, Bañar Vacunar
![Page 20: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/20.jpg)
20
Principios de la P OO
Propiedades, que lo llevan a ser un estilo de desarrollo que permite crear código re-utilizable
Encapsulamiento
Herencia
Polimorfismo
![Page 21: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/21.jpg)
21
ENCAPSULAMIENTOAbstracción de Datos
![Page 22: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/22.jpg)
22
Encapsulamiento
Proceso por el que se ocultan las:Estructuras de DatosLos detalles de la implementación
Permite considerar a los objetos como "cajas negras", evitando que otros objeto accedan a detalles que NO LES INTERESA.
Una vez creada la clase, las funciones usuarias no requieren conocer los detalles de su implementación.
![Page 23: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/23.jpg)
23
Encapsulamiento
Todos ellos están encapsulados o contenidos dentro de la misma clase, de manera que son propiedad de dicha clase.
Esos métodos y atributos pueden ser utilizados por otras clases sólo si la clase que los encapsula le brinda los permisos necesarios para ello.
Toda clase tiene una serie de atributos y métodos asociados a ella.
![Page 24: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/24.jpg)
24
Encapsulamiento
NúmeroSaldo
Atributos de una Cuenta Corriente:
Métodos: Depositar
Girar
Conocer el saldo
Cómo se almacenan estos datos?
![Page 25: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/25.jpg)
25
HERENCIAOrganización jerárquica
![Page 26: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/26.jpg)
26
Herencia
Permite la reutilización de código creando nuevas clases a partir de las existentes (construidas y depuradas)
Un nueva clase se generará agregando atributos y/o código a una clase existente
Una clase (clase hija) puede heredar, de otra clase (clase padre):
Atributos y Métodos
![Page 27: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/27.jpg)
27
Herencia
Em pleadoS u e ld o
ClienteC u en ta
Alum noC arre ra
PersonaN om b re
D irecc ió nR U T
![Page 28: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/28.jpg)
28
POLIMORFISMO
![Page 29: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/29.jpg)
29
Polimorfismo
Capacidad de que dos clases diferentes respondan de forma distinta a un mismo mensaje.
Esto quiere decir que dos clases que tengan un método con el mismo nombre, y que respondan al mismo tipo de mensaje (es decir, que reciba los mismo parámetros), ejecutarán acciones distintas.
![Page 30: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/30.jpg)
30
Ejemplos de polimorfosmo
Ejemplo 1:
Al presionar el acelerador esperamos que aumente la velocidad del auto, independiente de si se tiene un:
Motor con carburador Motor con inyección electrónica
![Page 31: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/31.jpg)
31
Ejemplos de polimorfosmo
Ejemplo 2:
Si tenemos las clases Persona y Gato, ambas responderán de manera distinta al mensaje "comunicar"
La persona hablará: Objeto María El gato maullará: Objeto: Kitty
![Page 32: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/32.jpg)
32
Ejemplos de polimorfosmo
OBJETOS
'A'
3
MENSAJESucesor
RESULTADOS
'B'
4
Ejemplo 3:
Si tenemos las clases Entero y Char, ambas
responderán de manera distinta al mensaje
"Sucesor"
![Page 33: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/33.jpg)
OBJETOS
![Page 34: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/34.jpg)
34
Objetos
En la POO se dice que en un objeto: "se unen datos y procesos".
En la programación estructurada, estaban separados en forma de variables y funciones.
Objeto. Instanciación de objetos Tiempo de vida de un objeto
variable.
declaración de variables.
ámbito de una variable.
POO Procedural
![Page 35: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/35.jpg)
35
Objetos
Un objeto consta de:
Un tiempo de vida Estado Comportamiento
Atributos
Métodos
Cada objeto es responsable de inicializarse y destruirse en forma correcta.
![Page 36: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/36.jpg)
36
La duración de un objeto en un programa siempre está limitada en el tiempo.
Tiempo de vida de un objeto
La mayoría de los objetos sólo existen durante una parte de la ejecución del programa.
Los objetos son creados mediante un mecanismo denominado instanciación,
Cuando dejan de existir se dice que son destruidos.
![Page 37: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/37.jpg)
37
Queda definido por sus atributos.
Con él se definen las propiedades del objeto, y el estado en que se encuentra en un momento determinado de su existencia.
Estado de un objeto
![Page 38: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/38.jpg)
38
Todo objeto debe de presentar una interfaz,
Esta interfaz queda definida por sus métodos, para que el resto de objetos, que forman parte del programa, puedan interactuar con él.
Comportamiento de un objeto
![Page 39: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/39.jpg)
CLASES
![Page 40: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/40.jpg)
40
Clases
Las clases son abstracciones que representan a un conjunto de objetos con un:
Comportamiento e Interfaz común.
Es la implementación de un tipo de dato (considerando los objetos como instancias de las clases)"
![Page 41: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/41.jpg)
41
Clases
Permite representar y definir colecciones de objetos.
Proporcionan una plantilla para la creación de objetos..Los elementos que componen la clase son
Atributos
Métodos
Clase:
Representan el estado de un objeto (Variables de ejemplar)
Representan el comportamiento de un objeto. (Funciones miembro).
![Page 42: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/42.jpg)
42
Ejemplo de instancia de objetos
Clase: Cuenta corriente
Variables Miembro: Número Nombre Saldo
Funciones Miembros: Depositar Girar Consulta del saldo
![Page 43: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/43.jpg)
43
Ejemplo de instancia de objetos
Clase: Cuenta corriente
Objeto: A
Métodos
Depositar
Girar
Consultar
Num: 1234
Nombre: Juan
Saldo: 350.000
Instanciación: Cuenta Corriente A,B
Métodos
Depositar
Girar
Consultar
Num: 9876
Nombre: María
Saldo: 450.600
Objeto: B
![Page 44: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/44.jpg)
MENSAJES
![Page 45: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/45.jpg)
45
Mensaje
Un programa en ejecución es una colección de objetos, donde los objetos que interactúan son creados y destruídos.
La interacción se basa en mensajes que son mandados de un objeto a otro, donde el emisor le pide al receptor que aplique un método a sí mismo.
Mecanismo por el cual se solicita una acción sobre el objeto.
![Page 46: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/46.jpg)
46
Mensajes
Perico (pajarero)Paco (cliente)
Mensaje
La interpretación del mensaje dependerá del receptor
Peca (secretaria)
Perico (pajarero)Paco (cliente)
Un objeto invoca un método como una reacción al recibir un mensaje
![Page 47: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/47.jpg)
METODOS
![Page 48: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/48.jpg)
48
Métodos
Función miembro de una clase.
Establece el comportamiento del objeto
Opera directamente sobre el objeto que lo invocó.
Recibe, como parámetro implícito el objeto que lo invocó.
![Page 49: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/49.jpg)
49
Métodos
Si el método requiere otros objetos de la clase, éstos deberán ser pasados como parámetros explícitos y el método sólo podrá acceder en forma indirecta a estos objetos.
Ejemplos: Depositar Girar Consultar
![Page 50: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/50.jpg)
RESUMEN
![Page 51: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/51.jpg)
51
Mensajes y métodos
Un objeto (agente emisor) envía un mensaje a otro objeto (agente receptor).
El mensaje tiene codificada la petición de una acción.
El mensaje incluye la información (argumentos) necesaria para satisfacer la petición.
Si el receptor acepta el mensaje, acepta la responsabilidad de ejecutar la acción indicada.
En respuesta a un mensaje, el receptor ejecuta un método para satisfacer la petición
![Page 52: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/52.jpg)
52
Clases y ejemplares
Todos los objetos son ejemplares de una clase.
La clase del receptor determina el método que se activa como respuesta a un mensaje.
Todos los objetos de una clase usan el mismo método en respuesta a mensajes similares
![Page 53: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/53.jpg)
53
Clases y métodos
Los objetos son ejemplos de TAD’s.Un TAD tiene dos caras: una exterior, la que ve el usuario, y una interior, la que sólo ve el programador.El usuario ve nada más que un conjunto de operaciones que definen el comportamiento de la abstracción.El programador ve las variables de datos que se usan para mantener el estado interno del objeto.Un ejemplar es un representante de una clase.
![Page 54: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/54.jpg)
54
Clases y métodos
Una variable de ejemplar es una variable interna mantenida por un ejemplar.Cada ejemplar tiene su propia colección de variables de ejemplar.Las variables de ejemplar sólo son modificables por los métodos definidos en la clase.Un objeto es la combinación de estado y comportamiento.
![Page 55: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/55.jpg)
55
Clases y métodos
El estado lo determinan las variables de ejemplar.El comportamiento lo determinan los métodos.Desde el exterior, los clientes sólo pueden ver el comportamiento de los objetos.Desde el interior, los métodos proporcionan el comportamiento apropiado mediante las modificaciones del estado.
![Page 56: PROGRAMACIÓN ORIETADA A OBJETOS. 2 Introducción Paradigma: Ejemplo ilustrativo, enunciado modelo Programación imperativa Programación funcional](https://reader036.vdocuments.pub/reader036/viewer/2022062519/5665b43b1a28abb57c903ba5/html5/thumbnails/56.jpg)
56
Clases y métodos
La interfaz describe la forma en que un objeto se conecta con el mundo.La implementación describe cómo se logra la responsabilidad prometida en la interfaz.
Una clase se puede concebir como un registro con dos variedades de campos: datos y procedimientos.Los datos constituyen las variables de ejemplar.Los procedimientos constituyen los métodos.