Objeto Orientado A Objeto

Páginas: 5 (1106 palabras) Publicado: 21 de septiembre de 2012
Programación Orientada a Objetos
Departamento de Lenguajes y Ciencias de la Computación E.T.S.I. Informática Universidad de Málaga

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

Programación Modular. Programación Orientada a Objetos

2

Introducción Histórica

Programación Modular. ProgramaciónOrientada a Objetos

3

Evolución de los Lenguajes de Programación
A B S T R A C C I Ó N O P E R A C I O N A L

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 TiposAbstractos de Datos Clases, Objetos

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

Programación Modular. Programación Orientada a Objetos

4

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)Programación Modular. Programación Orientada a Objetos

5

Conceptos básicos de la programación orientada a objetos

Programación Modular. Programación Orientada a Objetos

6

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

• OBJETO = Instancia de una CLASE

Entidad dinámica Cadaobjeto tiene su propio estado Objetos de una misma clase comparten un comportamiento Objeto ≈ Variable

Programación Modular. Programación Orientada a Objetos

7

VEHÍCULO ANIMAL

PUNTO (1,3) FIGURA (2,2) (2,1)
Programación Modular. Programación Orientada a Objetos 8

(5,2.5)

¿Qué es una Clase?
Caja negra que oculta en su implementación:
– Atributos: variables que codifican elestado 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 tipo
Programación Modular. Programación Orientada a Objetos 9

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

Programación Modular. Programación Orientada a Objetos

10

Implementador frente a 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 usuarioempleará los objetos de la clase exclusivamente a través del interfaz
Programación Modular. 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
12

Programación Modular. Programación Orientada aObjetos

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

Programación Modular. 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 unargumento de entrada/salida implícito llamado éste:
ALGORITMO trasladar(ES Punto éste, E R dx,dy);
Programación Modular. Programación Orientada a Objetos 14

Implementación de la clase Punto (1)
IMPLEMENTACIÓN CLASE Punto ATRIBUTOS R x,y; Estado MÉTODOS cambiar_x(E R nx) INICIO x = nx; // x == éste.x FIN cambiar_y(E R ny) INICIO y = ny; // y == éste.y FIN
15

acceso al argumento implícito...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Orientado a objetos
  • orientada a objetos
  • Diagramas orientado a objetos
  • Modelado orientado a objetos
  • Programacion orientada a objetos
  • PROGRAMACIÓN ORIENTADA A OBJETOS EN C++.
  • Programacion orientada a objetos
  • ¿Que es la Programación Orientada a Objetos?

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS