Download Descargar - Facultad de Ciencias
Document related concepts
Transcript
Curso: Lenguajes de Programación y sus Paradigmas 1999 Licenciatura en Ciencias de la Computación Facultad de Ciencias-UNAM Profesora: Dra. Hanna Oktaba Objetivo Se estudiarán los conceptos fundamentales y las características de los lenguajes de programación. Se revisarán los conceptos básicos de sintaxis y semántica, y la estructuración de datos, de computación y de programas. Se estudiaran los diferentes paradigmas de los lenguajes de programación tales como: imperativo, funcional, lógico y orientado a objetos. Contenido 1. Introducción 1.1 Proceso de desarrollo de software 1.2 Lenguajes y ambientes de desarrollo 1.3 Lenguajes y métodos de diseño 1.4 Lenguajes y la arquitectura de las computadoras 1.5 Cualidades de los lenguajes de programación 1.6 Perspectiva histórica 1.7 Breve resumen de conceptos 2. Sintaxis y semántica 2.1 Definición de lenguaje 2.2 Procesamiento de lenguaje 2.3 Variables 2.4 Rutinas 2.5 Alias y sobrecarga 2.6 Procesador semántico abstracto 2.7 Estructura de tiempo de ejecución (run-time) 3. Estructuración de datos 3.1 Tipos intrínsecos y primitivos 3.2 Agregación de datos y constructores de tipos 3.3 Tipos definidos por usuarios y tipos abstractos de datos 3.4 Sistemas de tipos 3.5 Estructura de tipos de algunos lenguajes representativos 3.6 Modelos de implementación 4. Estructuración de computación 4.1 Expresiones e instrucciones 4.2 Ejecución condicional e iteración 4.3 Rutinas 4.4 Excepciones 5. Estructuración de programas 5.1 Métodos de diseño de software 5.2 Conceptos que soportan modularidad 5.3 Conceptos de lenguajes para programación de grandes sistemas 5.4 Unidades genéricas 6. Lenguajes funcionales 6.1Caracteristicas de lenguajes imperativos 6.2 Funciones matemáticas y programables 6.3 Lenguajes funcionales representativos 7. Lenguajes lógicos 7.1 “Qué” versus “Cómo”: especificación versus implementación 7.2 Principios de programación lógica 7.3 PROLOG 7.4 Programación funcional versus programación lógica 8. Lenguajes Orientados a Objetos 8.1 Conceptos de programación orientada a objetos 8.2 Herencia y el sistema de tipos 8.3 Características de lenguajes orientados a objetos 8.4 Ejemplos representativos de lenguajes orientados a objetos Método de evaluación Cada módulo del curso será evaluado con un examen parcial teórico. También durante el estudio de cada módulo se dejará por lo menos una tarea. La evaluación del curso se definirá tomado en cuenta las calificaciones de los exámenes parciales y de las tareas. Bibliografía Ghezzi C. y M. Yazayeri, Programming Language Concepts, Third Edition, John Wiley & Sons, 1998. 2