Unidad de programación
Asignatura: Entornos de Programación

Plan 96 - 4º curso - Optativa     -     Curso 2005/06


===>  AVISO - PREACTAS DE LA CONVOCATORIA DE JUNIO

Se han publicado copias de las preactas de la asignatura para la convocatoria de Junio en el tablón de anuncios de la asignatura - Bloque 2, planta 3, a la entrada de los despachos de Programación

Se recuerda a todos los alumnos que las preactas son las únicas listas oficiales de calificaciones, ya que estas calificaciones son las que se incorporarán finalmente al expediente académico de cada alumno. Las listas parciales publicadas con anterioridad son sólo listas provisionales.

===>  AVISO - Entrega de prácticas para Septiembre - Ver instrucciones al final

===>  AVISO - Organización y entrega de las Prácticas con MED (5, 6 y 7) - Ver instrucciones al final

===>  AVISO - Invocar MED para realizar la práctica 7

Debido al conflicto entre las versiones de gcc para Ada (GNAT) y para C/C++ (Cygwin/DJGPP), para realizar la Práctica 7 hay que invocar la órdenes desde la ventana que se abre con el icono de acceso directo EP-Prac7 (de color rojo) en lugar del icono EP-4 (de color amarillo) que se venía usando hasta ahora.


Temario y normas de la asignatura

Guía de la asignatura para el curso 2005/06

Calificaciones de la asignatura (Convocatoria de Junio, incluyendo reajustes en la preacta)
NOTA: Las soluciones de los ejercicios del examen de Junio están expuestas en el tablón de anuncios de la asignatura, a la entrada de los despachos de Programación (Bloque 2, Planta 3)

Material de presentación (transparencias)

  1. - Lenguajes de "script" - Ejemplos (.bat)
  2. - Lenguaje AWK - Ejemplos (.awk)
  3. - Entornos de programación - Ejemplos de entornos y herramientas
  4. - Herramientas software
  5. - Control de versiones y configuración
  6. - Herramienta "make"

Enunciados de ejercicios prácticos

  1. - Práctica 1 -- Serie de programas de prueba
  2. - Práctica 2 -- Código de ejemplo
  3. - Práctica 3 -- Cuestionario de análisis
  4. - Práctica 4 -- Cuestionario de análisis
  5. - Práctica 5 -- Ejemplos (.awk)
  6. - Práctica 6 -- Código de ejemplo y programas de prueba
  7. - Práctica 7 -- Código de ejemplo

Documentación de software de utilidad
- Página de manual de 'grep'
- Página de manual de 'awk'/'gawk'
- Página de manual de 'diff'
- Página de manual de 'cmp'
- Página de manual de 'make'
- Página de manual de 'gcc'
- Página de manual de 'gcov'
- Effective AWK Programming (manual de usuario de 'gawk')
- Comparing and Merging Files (manual de usuario de 'diff', 'diff3', 'sdiff', 'cmp' y 'patch')
- Manual de usuario de 'info'
- Manual de usuario de 'make'

Material de cursos anteriores: - Curso 1999/00 - Curso 2000/01 - Curso 2001/02 - Curso 2002/03 - Curso 2003/04 - Curso 2004/05

Material adicional accesible en InterNet


Instrucciones para la organización y entrega de las prácticas con MED (5, 6 y 7)

A. Organización

Para facilitar el desarrollo y ensayo de una práctica en diferentes equipos (y no sólo en el que usa el alumno en el aula informática) se puede organizar el material de manera análoga a la siguiente (los nombres en cursiva pueden variar de un caso a otro):

  +- med
  |  +- username     <-- configuración de MED
  |     +- med-bmp
  |     +- med-cft
  |     +- med-mac
  |     +- ...
  |
  +- ...practicaX    <-- código desarrollado por el alumno
  |     +- xxx.bat         (ficheros .bat, .awk, ...)
  |     +- yyy.bat
  |     +- zzz.awk
  |     +- ...
  |
  +- ...ejemplosX    <-- código de ejemplo, en uno o varios directorios
        +- bbb.awk         (práctica 5: .awk)
        +- ccc.ads         (práctica 6: .ads, .adb)
        +- ccc.adb         (práctica 7: .h, .cpp)
        +- ppp.h
        +- ppp.cpp

Ni en la definición de herramientas en MED ni en el código desarrollado por el alumno deben aparecer path absolutos. Es decir, no debe haber referencias a programas o ficheros de la forma:

    H:\xxx\yyy.zzz

En su lugar, debe bastar el nombre:

    yyy.zzz

Para que los ficheros se localicen simplemente dando su nombre, tanto para el código del alumno como para los ficheros de ejemplo, se debe invocar MED desde la ventana de órdenes de la siguiente manera (se pueden poner estas órdenes en un fichero .bat para no tener que escribirlas a mano cada vez):

    H:\> path ...practicaX;%PATH%
    H:\> set AWKPATH=...practicaX
    H:\> cd ...ejemplosX
    H:\...ejemplosX> med

Se puede evitar tener que usar AWKPATH si el código .awk se invoca desde un .bat en el mismo directorio, usando el mecanismo de expansión de parámetros. Por ejemplo, un fichero xxx.bat puede hacer referencia a zzz.awk en su mismo directorio escribiendo:

    Fichero xxx.bat:
       .... %~dp0zzz.awk ...      (%~dp0 es el path del propio script)

B. Entrega

La entrega de la práctica se realizará por correo electrónico dirigido al profesor. El material a entregar incluirá lo siguiente:

  1. Ficheros de configuración de MED, parcialmente modificados por el alumno
  2. Código (scripts) desarrollado por el alumno

Este material debe estar empaquetado en un archivo (.ZIP o .RAR), manteniendo la estructura de directorios. El contenido del archivo será similar al siguiente:

  +- username
  |  +- med-bmp
  |  +- med-cft
  |  +- med-mac
  |  +- ...
  |
  +- practicaX
     +- xxx.bat
     +- yyy.bat
     +- ...

Los ficheros de configuración de MED se encuentran en H:\med\username, donde username es el nombre de usuario del alumno.

El código desarrollado por el alumno estará en el directorio que él mismo haya decidido. Sólo hay que entregar el código de las órdenes que se invocan como Tools de MED, no el código de ejemplo (AWK, Ada, C++) utilizado en las pruebas.

La entrega se realizará de la misma manera que para las Prácticas 1 y 2:

  1. Empaquetar todos los ficheros indicados en un archivo .ZIP (o .RAR)
  2. Enviar un mensaje al profesor indicando
    1. En el campo de 'asunto' (subject): Entornos de Programacion - Practica 5/6/7
    2. En el cuerpo del mensaje poner el Nombre y Apellidos y el Nº de Matrícula del alumno o alumnos que han realizado la práctica
    3. Incluir el archivo .ZIP/.RAR como adjunto

NOTA adicional

No se deben usar nombre de ficheros o directorios con espacios en blanco. Esto da lugar a muchos problemas.


Entrega de prácticas para la convocatoria de Septiembre

Las prácticas para Septiembre son las mismas que para la convocatoria de Junio (las realizadas durante el curso). Se podrán entregar hasta el día del examen (Martes 19) de Septiembre. La entrega se realizará por correo electrónico tal como se ha hecho durante el curso.

Las prácticas se pueden realizar en cualquier aula informática de la Facultad (no necesariamente en "Los Verdes"), montando la unidad de disco de red con el material de la asignatura, mediante la orden:

   net use J: \\bob\entornos

También se pueden hacer las prácticas en máquinas personales de los alumnos si se instala el software necesario, pero en este caso debe ser el propio alumno el que se encargue de instalarlo y configurarlo adecuadamente (respetando las licencias de uso correspondientes).

Para realizar las prácticas se podrán realizar consultas al profesor por correo electrónico, preferiblemente usando la lista de correo "foro-ep@lml.ls.fi.upm.es", aunque la respuesta puede demorarse algunos días. Además se pueden hacer consultas en el despacho del profesor (D-2309) cuando esté en él (pero durante el verano no hay horario fijo de permanencia o tutorías).


Manuel Collado