Download Descargar - Facultad de Ciencias

Document related concepts

Programación funcional wikipedia , lookup

Oz (lenguaje de programación) wikipedia , lookup

Dylan (lenguaje de programación) wikipedia , lookup

Ocaml wikipedia , lookup

Mercury (lenguaje) wikipedia , lookup

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