Ministerio de Educación, Ciencia y Tecnología
Universidad Nacional de San Luis
FACULTAD DE CS. FISICO MAT. Y NAT.

ANEXO II

PROGRAMA DEL CURSO: PROGRAMACION II

DEPARTAMENTO DE:   INFORMATICA
AREA: Area IV: Pr. y Met. de Des. del Soft. (FAÑO: 2004 (Id: 2964)
Estado: Aprobado

 

I - OFERTA ACADÉMICA

CARRERAS PARA LAS QUE SE OFRECE EL MISMO CURSO

PLAN DE ESTUDIOS
ORD. Nº

CRÉDITO HORARIO

   

SEM.

TOTAL

LIC. EN CIENCIAS DE LA COMPUTACION11/9815135
PROFESORADO EN CIENCIAS DE LA COMPUTACION11/9815135
PROFESORADO EN CIENCIAS DE LA COMPUTACION (35/86)35/8615135

II - EQUIPO DOCENTE

Funciones

Apellido y Nombre

Total hs en
este curso

Cargo y Dedic.

Carácter

Responsable

NECCO, CLAUDIA MONICA20  hs.PROFESOR ADJUNTO EXC.Interino
Jefe Trab. Prác.VILALLONGA, GABRIEL DOMINGO10  hs.JEFE DE TRABAJOS PRAC. EXC.Efectivo
Auxiliar de 1ºDNL 10  hs.AYUDANTE DE 1RA. SEMI. Interino
Auxiliar de 1ºDNL 10  hs.AYUDANTE DE 1RA. EXC. Efectivo
Auxiliar de 1ºDNL 10  hs.AYUDANTE DE 1RA. EXC. Efectivo
Auxiliar de 2ºALBORNOZ, MARIA CLAUDIA 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºALBORNOZ, MARIA CLAUDIA 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºABDELAHAD, CORINA NATALIA 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºABDELAHAD, YANINA ZORAIDA 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºDNL 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºDNL 6  hs.AYUDANTE DE 2DA. SIMP.Temporal
Auxiliar de 2ºDNL 6  hs.AYUDANTE DE 2DA. SIMP.Temporal

DNL: Docente no listado

III - CARACTERÍSTICAS DEL CURSO

CREDITO HORARIO SEMANAL
MODALIDAD
REGIMEN

Teórico/

Práctico

Teóricas

Prácticas de

Aula

Práct. de lab/ camp/

Resid/ PIP, etc.

1c
 Hs.
3 Hs.
6 Hs.
 Hs.
Promocional
Otro: 
Duración: 15 semanas
Período del 8/03/04 al 18/06/03

IV.- FUNDAMENTACION


Warning: fread() [function.fread]: Length parameter must be greater than 0. in /extra/alumnos/carreras/impresion.php3 on line 477


V.- OBJETIVOS

- Completar y reforzar los conceptos básicos de la programación imperativa.
- Introducir conceptos de la programación avanzada
- Ejercitar desarrollos de programas basados en métodos estructurados.
- Iniciar el estudio del paradigma de la programación funcional
- Ejercitar desarrollos de programas basados en el paradigma de la prog. funcional
- Iniciar el estudio y aplicación del paradigma de la programación orientada a objetos
- Ejercitar desarrollos de programas basados en el paradigma de la prog. O. a objetos

 


VI. - CONTENIDOS

1. Programación Imperativa:
Características generales del lenguaje C. Tipos numéricos.
Operaciones. Conversiones de tipos. Casts. Control de secuencia.
Arreglos. Estructuras. Uniones. Punteros. Relación entre punteros y
arreglos. Aritmética de punteros. Punteros a funciones. Strings.
Entrada y Salida. Administración dinámica de memoria.
Declaraciones de tipos. Clases de
almacenamiento. Alcance. Archivos.

2. Programación Funcional:
Características generales de los lenguajes funcionales. Estilo de
programación pointfree vs poitwise.
Lenguaje de programación Funcional de Backus: Definición. Objetos.
Aplicación. Funciones Primitivas. Formas funcionales.
Definiciones. Recursión.
Lenguaje Common Lisp: Manipulación simbólica. Funciones y
Predicados básicos. Definición de funciones. Condicionales.
Objetos de procedimientos. Variables libres y ligadas.
Evaluación de funciones. Recursión e iteración. Definiciones
lambda. Listas de propiedades. Parámetros.

3.Programación Orientada a Objetos
Descripción del paradigma de orientación a Objetos. Objetos.
Mensajes. Clases.
Características generales del Lenguaje C++: Datos y funciones
miembro. Constructores y destructores. Control de acceso.
Encapsulamiento. Herencia. Control de herencia. Herencia
múltiple. Polimorfismo. Funciones virtuales. Objetos dinámicos.


VII. - PLAN DE TRABAJOS PRÁCTICOS

Prácticos de aula:

1. Desarrollo de ejercicios en Lenguaje C

2. Desarrollo de ejercicios en Lenguaje Funcional de Backus

3. Desarrollo de ejercicios en Lenguaje Common LISP

4. Desarrollo de ejercicios en Lenguaje C++

Prácticos de maquina:

Desarrollo y entrega de un práctico de cada uno de los
paradigmas vistos: programación procedural, programación funcional y
programación orientada a objetos.


VIII - RÉGIMEN DE APROBACIÓN

- Para regularizar la asignatura:
el alumno debe aprobar dos exámenes parciales o sus correspondientes
recuperaciones, y presentar en forma y tiempo los prácticos de
máquina solicitados por la cátedra.

- Para promocionar la asignatura:
el alumno debe cumplir con las condiciones de regularización y
aprobar los exámenes parciales con un nivel superior o igual al
70% del total.


EXAMEN LIBRE:
Los alumnos que habiendo aprobado todos los prácticos de máquina
hayan quedado libres por parciales, y en este caso, por la no
aprobación de uno y no más de los temas que componen la materia, pueden
presentarse como alumnos LIBRES.
Una lista con los datos de los alumnos habilitados para rendir el
examen libre será elevada a sección de alumnos junto con las actas
correspondientes a la finalización de la materia.
La posibilidad de rendir el examén en calidad de libre expira con
el inicio del próximo dictado de la materia.

Los alumnos rendirán un examen final que contendrá ejercicios
prácticos correspondientes al tema objeto de la pérdida de la
condición de regularidad, más el contenido correspondiente a un
examen final normal(el que debe rendir un alumno regular).



IX.a - BIBLIOGRAFÍA BÁSICA

Apuntes proporcionados por la Cátedra:
Tutorial de Lenguaje C
Notas de clase sobre Recursión.
Programación Funcional.
tutorial de Lenguaje LISP
Tutorial de Lenguaje C++

- The C Programming Language.
Brian Kernighan - Dennis Ritchie. 1988. Prentice Hall.

- Can programming be liberated from the Von Neumman Style?.
John Backus. ACM Communications, vol.21, nro 8.

- LISP. Patrick Winston
Berthold Horn. Tercera edición. 1997. Addison Wesley.



IX b - BIBLIOGRAFÍA COMPLEMENTARIA

- C: A Software Engineering Approach.
Peter A. Darnell, Philip E. Margolis. 1996. Springer Verlag.

- Aplique Turbo C++.
Herbert Schildt. McGraw-Hill.1991.

- Principles of Functional Programming.
Hugh Glaser, Chris Hankin, David Till.

- Object-Oriented Programming: An Evolutionary Approach.
Brad J. Cox - Andrew J. Novobilski. 1991. Addison Wesley.

- An Introduction to object Oriented Programming in C++.
Wiener and Pinson.



COMPLEMENTO DE DIVULGACION


OBJETIVOS DEL CURSO

- Completar y reforzar los conceptos básicos de la programación imperativa.
- Iniciar el estudio del paradigma de la programación funcional
- Iniciar el estudio y aplicación del paradigma de la programación orientada a objetos

 

 

PROGRAMA SINTETICO

1. Programación Imperativa.
Características generales del lenguaje C. Tipos de datos simples y
estructurados. Punteros. Administración dinámica de memoria.
Entrada y Salida. Archivos.

2. El paradigma de la Programación Funcional
Características generales de los lenguajes funcionales.
Lenguaje de programación Funcional de Backus (estilo pointfree)
Lenguaje Common Lisp (estilo pointwise)

3. El paradigma de la Programación Orientada a Objetos
Descripción del paradigma de orientación a Objetos. Objetos. Mensajes. Clases. Lenguaje C++:

 


IMPREVISTOS