La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

EL PREDECESOR DE LOS LENGUAJES ORIENTADOS A OBJETOS

Presentaciones similares


Presentación del tema: "EL PREDECESOR DE LOS LENGUAJES ORIENTADOS A OBJETOS"— Transcripción de la presentación:

1 EL PREDECESOR DE LOS LENGUAJES ORIENTADOS A OBJETOS
SIMULA EL PREDECESOR DE LOS LENGUAJES ORIENTADOS A OBJETOS Asignatura: Programación Declarativa avanzada Alumno: Juan Lucena Raya

2 INDICE Introducción Un poco de historia Características Básicas
Sintaxis Concurrencia en Simula ¿Qué se hizo mal en Simula?

3 Introducción Simula es el primer lenguaje de programación orientada a objetos que varios años después de su desarrollo, casi todos los lenguajes modernos comenzaron a utilizar sus principios de orientación a objetos. Así fue como se popularizaron términos como clases, objetos, instancias, herencia, polimorfismo, etc.

4 Un poco de Historia Simula I. Proceso orientado a la simulación discreta del mundo real, al principio como un paquete que extendía al lenguaje Algot 60. Las principales extensiones fueron: Declaración de clases Generar objetos de un clase declarada Nombrar los objetos generados Estructura jerárquica de declaración de clases Se implementó en 1964 para la serie de computadoras 1100 de UNIVAC y posteriormente para la Burroughs B5500 y la URAL 16

5 Un poco de historia II Simula 67 fue oficialmente lanzado por sus autores Ole Johan Dahl, Kristen Nygaard y Bjorn Mygrhaugdel en la Conferencia de Trabajo en Lenguajes de Simulación IFIO TC 2, en Lysebu cerca de Oslo en mayo de 1967, este era un lenguaje de propósito general. Implementaciones para ordenadores IBM, DEC, Control Data y UNIVAC. En 1986 se acortó su nombre a Simula, por el que se conoce en la actualidad. Hoy en día, el interés de los creadores de Simula ha producido un segundo lenguaje de programación, llamado Beta, el cual generaliza todas las construcciones del lenguaje en una única idea denominada patrón.

6

7 Características Básicas
La idea de dividir un sistema en bloques que pueden resolverse individualmente se conoce en Simula como Modularización. Un módulo es una estructura de datos a la que se añaden sus algoritmos y acciones asociadas. Cuando se ejecuta un bloque se genera una instancia dinámica de él. Módulo = semántica del programa. Instancia dinámica = componente de un proceso en ejecución. Distintitas instancias de un mismo módulo pueden coexistir en un proceso de computación.

8 Características Básicas
CLASE = DATOS + ACCIONES INSTANCIA DINÁMICA En tiempo de ejecución OBJETO

9 Sintaxis Class Punto(X,Y); Real X,Y; Begin
Procedure Print; Begin ... End; Procedure Shift(Dx, Dy); Real Dx, Dy; Begin ... End; Print; ! Vida del punto; End of Punto; Class Circulo(Radio, Centro); Real Radio; Ref(Punto) Centro; Procedure Shift(Dx, Dy); Real Dx, Dy; Begin ... End; OutText(“Circulo creado en "); ! Vida del Circulo; Centro.Print; End of Circulo; Punto Class Particula; Integer masa; End of Particula;

10 Sintaxis Ref(Punto) A,Origen; Ref(Circulo) C;
A :- New Punto(0,0); ! Crea el origen; Origen :- A C :- New Circulo(2,Origen); ! Crea el circulo;

11 Concurrencia en Simula
Los estados de un proceso son: Activo: un segmento del proceso esta siendo ejecutado Suspendido: el proceso es introducido en el scheduler. A menos que sea cancelado, este será activado en el futuro. Pasivo: el proceso no esta en el scheduler. Debe ser activado por otro proceso. Terminado: el proceso ha finalizado y no puede ser activado de nuevo.

12 Concurrencia en Simula
Instrucciones: Activate X activa un proceso pasivo X. Reactivate X. otra forma de activar un proceso pasivo o cambia el próximo tiempo de activación si el proceso es activado o suspendido. Hold(T) genera un retraso T en la vida del proceso. Passivate el proceso pasa al estado pasivo. Cancel(X) cancela la próxima activación de X. Wait(Q) el proceso pasa al estado pasivo y lo pone al final de una lista (cola) Q.

13 ¿Qué se hizo mal en Simula?
General: Nacido en un país europeo pequeño Congelado en 1968 Costoso No tiene un IDE moderno Demasiado complicado No existen suficientes publicaciones

14 ¿Qué se hizo mal en Simula?
Características del lenguaje: Instalaciones limitadas de acceso a archivo Tipos de datos que faltan (registros, conjuntos) No tiene paralelismo avanzado ni soporte en tiempo real No soporta GUI Ficheros ejecutables grandes para programas pequeños

15 ¿Qué se hizo mal en Simula?
Características del LOO: No tiene herencia múltiple No tiene interfaces Simulación: No tiene colección automática de estadística No tiene generador de informes Ningunas instalaciones especializadas útiles (recursos)

16 Bibliografía Simula como predecesor de los lenguajes orientados a objetos. PF/133 History of Programming Languajes. Edited by Richard L. Wexelblat


Descargar ppt "EL PREDECESOR DE LOS LENGUAJES ORIENTADOS A OBJETOS"

Presentaciones similares


Anuncios Google