Programacion orientada a objetos

Solo disponible en BuenasTareas
  • Páginas : 5 (1247 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de febrero de 2010
Leer documento completo
Vista previa del texto
Programación Orientada a Objetos
Departamento de Lenguajes y Ciencias de la Computación

Contenido
• Introducción histórica • Conceptos básicos de la Programación O. O. • Conceptos avanzados de la Programación O.O.

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

2

Introducción Histórica

Departamento de Lenguajes y Ciencias de laComputación

Programación Orientada a Objetos

3

A B S T R A C C I Ó N O P E R A C I O N A L

Evolución de los Lenguajes de Programación
Instrucciones Máquina Expresiones, Funciones Estr. Control, Subprogramas Ocultamiento Información, Interfaces Métodos, Mensajes Lenguajes Máquina / Ensamblador FORTRAN Direcciones de Memoria, Registros Variables de Tipos Predef., Arrays Definición de Tipos,Punteros Tipos Abstractos de Datos Clases, Objetos
Programación Orientada a Objetos 4

A B S T R A C C I Ó N D E D A T O S

PASCAL

MODULA-2 ADA Lenguajes Orientados a Objetos

Departamento de Lenguajes y Ciencias de la Computación

Evolución de los Lenguajes Orientados a Objetos
• • • • • • Simula (Nygaard, 60s) Smalltalk (Xerox PARC, 70s) Eiffel (Meyer, 80s) C++ (Stroustrup, 80s)Java (Sun Microsystems, 90s) C# (Microsoft, 00s)

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

5

Conceptos Básicos de la Programación O.O.

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

6

Clases y Objetos
• CLASE = SUBPROGRAMAS + VARIABLES
Criterio de Modularización Estado + ComportamientoEntidad estática Clase ≈ Tipo

• OBJETO = Instancia de una CLASE
Entidad dinámica Cada objeto tiene su propio estado Objetos de una misma clase comparten un comportamiento Objeto ≈ Variable

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

7

VEHÍCULO ANIMAL

PUNTO (1,3) FIGURA (2,2) (2,1)
Departamento de Lenguajes y Ciencias de la Computación(5,2.5)

Programación Orientada a Objetos

8

¿Qué es una Clase?
Caja negra que oculta en su implementación:
Atributos: variables que codifican el estado de una instancia de la clase (objeto) Métodos: subprogramas que describen el comportamiento de un objeto de la clase

Una clase es semejante a un tipo:
Atributos: estructura de datos Métodos: operaciones sobre el tipoDepartamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

9

¿Qué es un Objeto?
Instancia de una clase:
Cada objeto de una clase tiene su propia copia de los atributos (estado propio) Todos los objetos de una clase comparten los mismos métodos (comportamiento común)

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

10 Implementador vs. Usuario
• Las clases son cajas negras con
Interfaz (uso) Implementación (funcionamiento)

• El implementador se encarga de definir el interfaz y de desarrollar la implementación • El usuario empleará los objetos de la clase exclusivamente a través del interfaz

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

11

Un ejemplo:la clase Punto
Punto Atributos = Estado Propio Métodos = Comportamiento Común

Clase

R x,y; trasladar(a,b) distancia(pto)

Objetos

(Punto) x= 2 y= 3

(Punto) x= -1 y= 4 (Punto) x= 5 y= 7
Programación Orientada a Objetos 12

Departamento de Lenguajes y Ciencias de la Computación

Definiendo la clase Punto
INTERFAZ CLASE Punto MÉTODOS cambiar_x(E R nx); Comportamiento cambiar_y(ER ny); trasladar(E R dx,dy); R distancia(E Punto p); FIN Punto;

Departamento de Lenguajes y Ciencias de la Computación

Programación Orientada a Objetos

13

Definición de Métodos
• El objeto afectado no aparece como argumento del método:
trasladar(E R dx,dy);

• En realidad, el objeto afectado es un argumento de entrada/salida implícito llamado éste:
ALGORITMO trasladar(ES Punto...
tracking img