Lenguajes de Programacion II (E28)

Presentación | Descripción | Teoría | Prácticas | Exámenes | Referencias | FAQ | Avisos

Descripción

Objetivos | Temario | Evaluación | Bibliografía

Objetivos

La asignatura Lenguajes de Programación II tiene por objetivo mostrar al alumno técnicas avanzadas de programación. La asignatura se centra en el paradigma de programación orientado a objetos (P.O.O.) y utiliza como lenguaje para introducir dichas técnicas el lenguaje C++, derivado de C.

Temario

Unidad I: El lenguaje C

Tema 1. Introducción
1.1 Origen del lenguaje C
1.2 Características generales del C
1.3 La estructura de un programa en C
1.4 Un primer programa escrito en C
1.5 Modelo de compilación
1.6 Ejemplos
Tema 2. Elementos básicos del lenguaje
2.1 Identificadores
2.2 Palabras clave
2.3 Tipos de datos
2.4 Constantes
2.5 Variables
2.6 Expresiones y operadores
2.7 Conversión de tipos
2.8 Punteros
2.9 Ejemplos
Tema 3. Las estructuras de control
3.1 Sentencias
3.2 Condiciones
3.3 Estructuras condicionales
3.4 Estructuras de selección múltiple
3.5 Estructuras de repetición
3.6 Sentencias asociadas a bucles
Tema 4. Estructura de un programa
4.1 Declaración de funciones
4.2 Prototipos de funciones (ANSI)
4.3 Argumentos de una función
4.4 Modo de almacenamiento de las variables
4.5 El preprocesador
4.6 Punteros a funciones
Tema 5. Tipos de datos estructurados
5.1 Vectores
5.2 Vectores n-dimensionales
5.3 Funciones para manejo de buffers
5.4 Cadenas de caracteres
5.5 Vectores y punteros
5.6 Estructuras
5.7 Uniones
5.8 Tipo enumerado
5.9 Memoria dinámica
5.10 Ejemplos
Tema 6. La entrada/salida
6.1 Streams
6.2 Algunas funciones de E/S
6.3 Archivos
6.4 Ejemplos

Unidad II: Programación orientada a objetos

Tema 7. Introducción
7.1 La crisis del software
7.2 Los modelos y lenguajes objetos
Tema 8. Evolución hacia la programación orientada a objetos
8.1 Introducción
8.2 Los procedimientos
8.3 La modularidad
8.4 Tipos abstractos de datos
8.5 Programación orientada a objetos
Tema 9. El lenguaje C++
9.1 Incorporaciones fundamentales
9.2 Mejoras sobre el C
9.3 Ejemplo
Tema 10. Clases y objetos
10.1 Conceptos
10.2 Atributos de las clases en C++
10.3 Declaración de clases en C++
10.4 Declaración y definición de funciones en una clase
10.5 Constructores y destructores de una clase
10.6 Expansión inline
10.7 Funciones friend
10.8 Calificación de variables miembro
10.9 Variables de clase
10.10 Vectores de objetos y punteros a objeto
10.11 Clases compuestas
10.12 Ejemplo
Tema 11. La herencia
11.1 Conceptos
11.2 La herencia en C++
11.4 Miembros y herencia protegida
11.5 Redefinición de funciones heredadas
11.6 Herencia múltiple
11.7 Constructores y destructores en clases derivadas
11.8 Punteros y herencia
11.9 Clases base virtual
Tema 12. Polimorfismo
12.1 Definición de polimorfismo
12.2 Sobrecarga de funciones
12.3 La palabra reservada this
12.4 Sobrecarga de operadores
12.5 Polimorfismo en tiempo de ejecución
12.7 Funciones virtuales puras y tipos abstractos
12.8 Ejemplos
Tema 13. Clases y funciones genéricas
13.1 Introducción
13.2 Aplicación de las funciones y las clases genéricas en C++
Tema 14. La gestión de la entrada/salida
14.1 Introducción
14.2 La E/S en Programación Orientada a Objetos
14.3 La E/S en C++
Tema 15. El manejo de excepciones
15.1 Introducción
15.2 El manejo de excepciones en Programación Orientada a Objetos
15.3 El manejo de excepciones en C++

Evaluación

La evaluación del alumno se realizará mediante un examen escrito. La realización de las prácticas y su evaluación como aptas es requisito indispensable para aprobar la asignatura

Bibliografía




Última modificación: viernes, 25 octubre 2002.

José Luis LLopis ( llopis@lsi.uji.es)

Departamento de Lenguajes y Sistemas Informáticos, Universitat Jaume I.