Download Guía de Estudio de la Asignatura de Teoría de los Lenguajes de

Document related concepts

Programación funcional wikipedia , lookup

Haskell wikipedia , lookup

Meta Lenguaje wikipedia , lookup

Oz (lenguaje de programación) wikipedia , lookup

Logo (lenguaje de programación) wikipedia , lookup

Transcript
GUÍA DE ESTUDIO DE LA ASIGNATURA
GRADO
TEORÍA DE LOS LENGUAJES DE
PROGRAMACIÓN
Equipo docente: Ana García Serrano y Fernando López
Ostenero
2014-2015
GRADO EN INGENIERÍA EN INFORMÁTICA
UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA
Contenido
1. PLAN DE TRABAJO..............................................................................................................................3
2. ORIENTACIONES PARA EL ESTUDIO DE LOS CONTENIDOS..................................................7
2.1. UNIDAD DIDÁCTICA 1: PRINCIPIOS DE DISEÑO DE LOS LENGUAJES DE PROGRAMACIÓN.............7
2.1.1. Descripción detallada de los contenidos...................................................................................7
2.1.2. Resultados de aprendizaje asociados a los contenidos..............................................................7
2.1.3. Bibliografía básica y material complementario........................................................................7
2.2. UNIDAD DIDÁCTICA 2: PROGRAMACIÓN DECLARATIVA..............................................................8
2.2.1. Descripción de tallada de los contenidos..................................................................................8
2.2.2. Resultados de aprendizaje asociados a los contenidos..............................................................8
2.2.3. Bibliografía básica y material complementario........................................................................8
2.3. UNIDAD DIDÁCTICA 3: PRINCIPIOS BÁSICOS DEL DISEÑO DE LENGUAJES...................................9
2.3.1. Descripción de tallada de los contenidos .................................................................................9
2.3.2. Resultados de aprendizaje asociados a los contenidos..............................................................9
2.3.3. Bibliografía básica y material complementario......................................................................10
2.4. UNIDAD DIDÁCTICA 4: ABSTRACCIÓN Y ESTRUCTURA DEL CONTROL Y LA ORGANIZACIÓN DE
ENTORNOS DE EJECUCIÓN........................................................................................................................11
2.4.1. Descripción de tallada de los contenidos ...............................................................................11
2.4.2. Resultados de aprendizaje asociados a los contenidos............................................................11
2.4.3. Bibliografía básica y material complementario......................................................................12
2.5. CONTEXTUALIZACIÓN.......................................................................................................................13
3. ORIENTACIONES PARA LA REALIZACIÓN DEL PLAN DE ACTIVIDADES........................14
3.1. MEDIOS Y RECURSOS........................................................................................................................14
3.2. EVALUACIÓN.....................................................................................................................................14
3.2.1. Examen.....................................................................................................................................14
3.2.2. Realización de la práctica........................................................................................................15
2
1. PLAN DE TRABAJO
En la guía de estudio o segunda parte de la guía didáctica de la asignatura “Teoría de los
lenguajes de programación” (de los estudios de grado en Ingeniería Informática) se detalla el plan de trabajo y se aportan sugerencias para el estudio de la misma y para la realización de las actividades planificadas.
Esta asignatura presenta los contenidos relacionados con la teoría y la práctica de los
lenguajes de programación (LP) y lo óptimo es estudiarla de forma continuada a lo largo
del cuatrimestre.
Recordemos (primera parte de la guía) que los objetivos generales de la asignatura son
el estudio formal de los Lenguajes de Programación (LP) y su especificación, para
que el estudiante tenga una visión general que le permita entender el papel de la sintaxis
y la semántica en los LP y conocer los mecanismos de los LP y sus construcciones,
para que el estudiante pueda distinguir, por ejemplo, entre el control de secuencia y el
control de datos en un programa, los rasgos que caracterizan a los elementos de datos en
un lenguaje o su sistema de tipo.
Para alcanzar estos objetivos el estudiante se familiarizará con los paradigmas de los
lenguajes de programación existentes, enmarcando los LP en paradigmas y conociendo las características de los LP que los hacen adecuados para sus diseños de programas.
Otros detalles de esta asignatura OBLIGATORIA en el SEGUNDO SEMESTRE, de 6
créditos ECTS (150h de dedicación), son los relacionados con la planificación de la dedicación esperada del estudiante (en horas):
•
Horas de estudio teórico: 90 (60%)
•
Horas de trabajo práctico: 45 (30%)
•
Horas de actividades complementarias: 15 (10%)
Los contenidos del curso están organizados en cuatro unidades didácticas: en la primera,
a modo de introducción, se abordan los principios generales del diseño de los lenguajes
de programación, en la segunda los conceptos fundamentales y la práctica de la programación declarativa, en la tercera los principios básicos del diseño de los lenguajes de
programación y en la cuarta las estructuras de control y los entornos de ejecución de los
lenguajes de programación.
El cuadro siguiente muestra el cronograma que marca unas pautas adecuadas para que el
estudiante medio, que comienza a estudiar al principio del segundo semestre, alcance
los objetivos al final del curso. Este cronograma incluye los contenidos de cada tema y
las actividades a realizar, tanto de estudio teórico como práctico.
3
Contenidos
Plan de actividades
UNIDAD DIDÁCTICA I
Principios de diseño de los lenguajes de programación (1 Semana)
Tema 1: Paradigmas de computación. Semana 1
1. Estudiar las secciones
indicadas del capítulo 1 del
libro base de la asignatura
para adquirir un
conocimiento básico sobre
los conceptos relacionados
con los paradigmas de
computación
1. Abstracción en los lenguajes de
programación (sección 1.1)
2. Paradigmas de computación
(sección 1.2)
Tema 2. Principios de diseño de los lenguajes. Semana 1
1. Estudiar las secciones
indicadas del capítulo 1 del
libro base de la asignatura
2. Instalar los intérpretes de
Haskell y Prolog
1. Descripción de los lenguajes de
programación (sección 1.3)
2. Diseño de los lenguajes de
programación (sección 1.4)
UNIDAD DIDÁCTICA II
Programación Declarativa (5 Semanas)
Tema 3. Programación Funcional. Semanas 2-4
1. Programas como funciones
(sección 2.1)
2. Evaluación perezosa (sección
2.2)
3. Introducción al lenguaje Haskell
(sección 2.3)
1. Estudiar las secciones 2.1 y
2.2 del libro base
2. Estudiar la sección 2.3 del
libro base realizando, al
tiempo, ejercicios con el
intérprete de Haskell
3. Realizar las actividades
optativas referentes a la
programación funcional
correspondientes a esta
unidad didáctica
Tema 4. Programación Lógica. Semanas 5-6
1. Especificación de programas
(sección 3.1)
2. Computación lógica (sección 3.2)
3. Técnicas avanzadas de
programación lógica (sección
3.3)
4
1. Estudiar el capítulo 3 del
libro base realizando
ejercicios con el intérprete
de Prolog
2. Realizar las actividades
optativas referentes a la
programación lógica
correspondientes a esta
unidad didáctica
Contenidos
Plan de actividades
UNIDAD DIDÁCTICA III
Principios básicos del diseño de los lenguajes (4 Semanas)
Tema 5. Sintaxis de los lenguajes de programación. Semana 7
1. Estructura léxica de los
lenguajes de programación
(sección 4.1.1)
2. Gramáticas libres de contexto y
BNF (secciones 4.1.2 y 4.1.3)
3. Estructura sintáctica: árboles
sintácticos (sección 4.1.4)
4. Ambigüedad, asociatividad y
precedencia (sección 4.1.5)
5. Diagramas sintácticos (sección
4.1.6)
1. Estudiar la sección 4.1 del
capítulo 4 del libro base
2. Identificar los conceptos
estudiados en el tema
dentro del código de la
práctica y relacionarlos con
sus equivalentes en otros
lenguajes
3. Realizar las actividades
optativas
Tema 6. Semántica básica. Semanas 8-9
1. Atributos, ligaduras y funciones
semánticas (sección 4.2.1)
2. Declaraciones, bloques y alcance
(sección 4.2.2)
3. La tabla de símbolos (sección
4.2.3)
4. Asignación, tiempo de vida y
ambiente (sección 4.2.4)
5. Variables y constantes (sección
4.2.5)
1. Estudiar la sección 4.2 del
capítulo 4 del libro base
2. Identificar los conceptos
estudiados en el tema
dentro del código de la
práctica y relacionarlos con
sus equivalentes en otros
lenguajes
Tema 7. Tipos de datos. Semanas 9-10
1. Tipos de datos (introducción de
la sección 5.1)
2. Tipos atómicos (sección 5.1.1)
3. Tipos estructurados (sección
5.1.2)
4. Equivalencia de tipos de datos
(sección 5.2)
5. Conversión de tipos de datos
(sección 5.3)
1. Estudiar el capítulo 5 del
libro base
2. Identificar los tipos de
datos necesarios para la
realización de la práctica y
comparar su declaración en
diferentes lenguajes
3. Realizar las actividades
optativas correspondientes
a esta unidad didáctica
Contenidos
Plan de actividades
5
UNIDAD DIDÁCTICA IV
Abstracción y estructura del control y la organización de entornos de ejecución
(3 Semanas)
Tema 8: Control I: Expresiones y sentencias. Semanas 11-12
1. Estudiar los apartados
indicados del capítulo 6 del
libro base.
2. Identificar los conceptos
estudiados en el tema
dentro del código de la
práctica y relacionarlos con
sus equivalentes en otros
lenguajes.
1. Evaluación de Expresiones
(sección 6.1)
2. Sentencias Condicionales
(sección 6.2)
3. Bucles (sección 6.3)
4. Excepciones (sección 6.4)
Tema 9: Control II: Subprogramas y ambientes. Semanas 12-13
1. Definición y activación de los
subprogramas (introducción de
la sección 6.5)
2. Semántica de los subprogramas
(sección 6.5.1)
3. Mecanismos de paso de
parámetros (sección 6.5.2)
4. Ambientes de Ejecución (sección
6.5.3)
6
1. Estudiar los apartados
indicados del capítulo 6 del
libro base.
2. Identificar los conceptos
estudiados en el tema
dentro del código de la
práctica y relacionarlos con
sus equivalentes en otros
lenguajes.
3. Realizar las actividades
optativas correspondientes
a esta unidad didáctica.
2. ORIENTACIONES PARA EL ESTUDIO DE LOS
CONTENIDOS
A continuación se incluyen algunas orientaciones para el estudio de los contenidos de
esta asignatura.
2.1. UNIDAD DIDÁCTICA 1: Principios de diseño de los
lenguajes de programación
La primera unidad didáctica hace un repaso sobre los conceptos fundamentales dentro
de los lenguajes de programación. Se parte introduciendo los conceptos básicos generales que subyacen a la construcción de un LP. A continuación se enumeran detalladamente los criterios tanto de diseño como externos que han provocado el éxito o fracaso de
algunos LP, además se describe la evolución y cambio de estos criterios a lo largo del
tiempo y las necesidades o evoluciones en materias de computación que los provocaron.
2.1.1.
Descripción detallada de los contenidos
Tema 1: Paradigmas de computación
Es un tema en el que se presentan y definen conceptos que se verán con más profundidad en temas posteriores. La mayoría de los conceptos no son nuevos para los estudiantes, ya que han sido presentados en otras asignaturas. Sin embargo, conviene hacer una
recapitulación y volver a recordarlos de cara a su comprensión y utilización adecuada a
lo largo del curso.
Tema 2: Principios de diseño de los lenguajes
Este tema es presenta un panorama general de los principios de diseño de los lenguajes
de programación.
2.1.2.
Resultados de aprendizaje asociados a los
contenidos



Situar y motivar al estudiante respecto al estudio de los LP.
Repasar y aclarar conceptos básicos relacionados con los lenguajes de programación y los procesadores de lenguajes.
Presentar los principios de diseño de los lenguajes, tanto los fundamentales
como otros adicionales.
2.1.3.
Bibliografía básica y material complementario
Capítulo 1 del libro básico:
Teoría de los lenguajes de programación.
Fernando López Ostenero y Ana Mª García Serrano. Editorial Universitaria Ramón
Areces, 2014.
7
En la primera parte de esta guía se han indicado varios libros de consulta que pueden
utilizarse como material complementario, tanto para afianzar los conocimientos
relacionados con esta unidad, como para adquirir nuevos conocimientos relacionados.
2.2. UNIDAD DIDÁCTICA 2: Programación Declarativa
El objetivo global de esta unidad didáctica es el conocimiento de los lenguajes de
programación declarativa, en sus dos modalidades, la lógica y la funcional. La práctica
obligatoria de la asignatura se corresponde con esta unidad didáctica.
2.2.1.
Descripción de tallada de los contenidos
Tema 3: Programación Funcional
Este tema presentan los principios de la programación funcional. Se repasa el concepto
matemático de función y la forma en que pueden considerarse los programas como funciones, partiendo del modelo matemático que subyace a la programación funcional. Se
da una introducción al modelo de evaluación perezosa, propio de este tipo de lenguajes
y, a continuación, se presenta una introducción al lenguaje funcional Haskell, analizando algunas de sus propiedades.
Tema 4: Programación Lógica
Este tema comienza con una breve introducción a la lógica computacional y a la forma
en que puede utilizarse la lógica como un lenguaje de programación. Después, describe
el lenguaje Prolog y las técnicas para escribir programas en este lenguaje. También se
presentan algunos de los puntos fuertes y débiles de este lenguaje. El tema finaliza con
la presentación de la programación lógica en problemas complejos.
2.2.2.
Resultados de aprendizaje asociados a los
contenidos
Tema 3:
 Presentar los principios de la programación funcional.
 Analizar las propiedades del lenguaje Haskell como principal ejemplo de lenguaje de programación funcional.
 Conocer el modelo matemático que subyace a la programación funcional.
Tema 4:
 Presentar los principios de la programación lógica, destacando la lógica de primer orden y la resolución/unificación en el modelo de cláusulas de Horn.
 Analizar las propiedades del lenguaje Prolog como principal ejemplo de lenguaje de programación lógico.
8
2.2.3.
Bibliografía básica y material complementario
Capítulos 2 y 3 del libro básico:
Teoría de los lenguajes de programación.
Fernando López Ostenero y Ana Mª García Serrano. Editorial Universitaria Ramón
Areces, 2014.
En la primera parte de esta guía se han indicado varios libros de consulta que pueden
utilizarse como material complementario, tanto para afianzar los conocimientos
relacionados con esta unidad, como para adquirir nuevos conocimientos relacionados.
2.3. UNIDAD DIDÁCTICA 3: Principios básicos del
diseño de lenguajes
El objetivo global de esta unidad didáctica es el conocimiento teórico y práctico de los
principios relacionados con la sintaxis y semántica de los lenguajes de programación no
declarativos. Además se revisarán conceptos relacionados con los tipos de datos de un
lenguaje de programación.
2.3.1.
Descripción de tallada de los contenidos
Tema 5: Sintaxis de los lenguajes de programación
Este tema se ocupa con cierto detalle de la sintaxis de los lenguajes de programación,
mostrando el uso de diferentes herramientas, como BNF, EBNF y los diagramas sintácticos, para la definición formal de las gramáticas de los lenguajes.
Tema 6: Semántica básica
Este tema cubre los aspectos semánticos básicos de los lenguajes de programación: declaración, asignación y evaluación de variables y constantes; el uso de la tabla de símbolos y aspectos relacionados con el entorno de los símbolos definidos en los programas.
Tema 7: Tipos de datos
Este tema comienza describiendo los tipos de datos y los principales tipos y constructores de tipos disponibles en la mayoría de los lenguajes. Después de analizar estos principios básicos, se estudian los conceptos de verificación y equivalencia de tipos de datos,
analizando los principales problemas que se plantean.
2.3.2.
Resultados de aprendizaje asociados a los
contenidos
Tema 5:

Introducir al estudiante a las distintas herramientas conceptuales de construcción
de gramáticas, como el uso de BNF, EBNF, árboles de sintaxis, etc.
9

Comprender cómo afecta la ambigüedad a una gramática y sus posibles soluciones.
Tema 6:


Comprensión de algunos conceptos claves en el análisis semántico, como son las
ligaduras, entornos de ejecución, tabla de símbolos, etc.
Familiarizar al estudiante con el comportamiento de los símbolos definidos en
un lenguaje a la hora de acceder al contenido de los mismos.
Tema 7:


Familiarizar al estudiante con una descripción formal del conjunto de datos
(simples y complejos) que incluya un LP.
Comprender en profundidad los distintos procesos que forman parte de la tarea
de verificación de tipos en su forma estática o dinámica.
2.3.3.
Bibliografía básica y material complementario
Capítulos 4 y 5 del libro básico:
Teoría de los lenguajes de programación.
Fernando López Ostenero y Ana Mª García Serrano. Editorial Universitaria Ramón
Areces, 2014.
Además, en la primera parte de esta guía se han indicado varios libros de consulta que
pueden utilizarse como material complementario, tanto para afianzar los conocimientos
relacionados con esta unidad, como para adquirir nuevos conocimientos relacionados.
10
2.4. UNIDAD DIDÁCTICA 4: Abstracción y estructura
del control y la organización de entornos de
ejecución
El objetivo global de esta unidad didáctica es el conocimiento teórico y práctico de los
principios relacionados con las estructuras de control y los entornos de ejecución de los
lenguajes de programación. En el tema 8 se estudian las expresiones, cuya evaluación
permitirá que el programa pueda variar el flujo de ejecución mediante las estructuras de
control. En el tema 9 se tratan los subprogramas, que son bloques de código cuya
ejecución se pospone y que cuentan con una interfaz claramente especificada.
2.4.1.
Descripción de tallada de los contenidos
Tema 8: Control I: Expresiones y sentencias
En este tema se analizan, en primer lugar, las expresiones y la diversidad de problemas
de control que pueden surgir durante su evaluación. Después se tratan los mecanismos
de control estructurados como las sentencias condicionales y los bucles. Posteriormente
se analiza el manejo de excepciones, un mecanismo de control preventivo, que hace que
se altere la estructura de control explícito de un programa.
Tema 9: Control II: Subprogramas y ambientes
Este tema comienza con un repaso de las diversas formas sintácticas de definir y llamar
subprogramas. Sigue con un análisis de las propiedades semánticas de los mismos, y la
razón por la cual representan un concepto significativamente más complejo de una estructura de bloque como las estudiadas en el tema anterior.
Después se estudian las principales técnicas de paso de parámetros que llevan a un comportamiento semántico distinto, y se esboza la estructura de los registros de activación y
de las tres variedades básicas de ambientes en tiempo de ejecución.
2.4.2.
Resultados de aprendizaje asociados a los
contenidos
Tema 8:



Comprender como funciona la evaluación de expresiones y como dicha evaluación se ve afectada por el orden.
Entender la parte de un programa que se considera de control, las primitivas que
lo implementan, y sus características específicas en distintos paradigmas.
Familiarizar al estudiante con otro tipo de expresiones de control como las excepciones.
Tema 9:

Comprensión de la semántica de los subprogramas, tanto en tiempo de compilación como en tiempo de ejecución.
11


Funcionamiento del paso de parámetros en subprogramas. Características y consecuencias de los diferentes mecanismos de paso de parámetros.
Comprender el proceso de creación un ambiente de ejecución para un subprograma, los distintos ambientes de ejecución posibles y la gestión de la memoria en
dichos ambientes.
2.4.3.
Bibliografía básica y material complementario
Capítulo 6:
Teoría de los lenguajes de programación.
Fernando López Ostenero y Ana Mª García Serrano. Editorial Universitaria Ramón
Areces, 2014.
En la primera parte de esta guía se han indicado varios libros de consulta que pueden
utilizarse como material complementario, tanto para afianzar los conocimientos
relacionados con esta unidad, como para adquirir nuevos conocimientos relacionados.
12
2.5. Contextualización
Esta asignatura del grado de Ingeniería Informática se encuadra en la materia
“Lenguajes de Programación”, altamente relacionada con las materias “Fundamentos de
Programación”, y “Metodología de la Programación y Algoritmia”.
Las asignaturas relacionadas que se cursan previamente son:
2. Fundamentos de Programación (primero, primer semestre o 1S)
3. Programación Orientada a Objetos (primero, 2S)
4. Estrategias de Programación y Estructura de Datos (primero, 2S)
5. Programación y Estructura de Datos avanzadas (segundo, 1S)
La asignatura “Fundamentos de programación” presenta los tipos de datos básicos
(booleanos, números, vectores, tuplas, registros, punteros etc.) y estrategias elementales
de diseño algorítmico (en particular, iteración). Esta asignatura es una aprovecha estos
conocimientos en lo que respecta al diseño de ellos en un lenguaje de programación.
Con la asignatura “Programación orienta a objetos” se aprenden los conceptos de
programación orientada a objetos a través del lenguaje Java, conocimientos que en esta
asignatura se reflejarán en la parte de ejercicios prácticos, y para su diferenciación con
el paradigma declarativo de programación que se estudia en la segunda unidad
didáctica.
La asignatura “Estrategias de Programación y Estructura de Datos”, que debería ser
cursada después de las dos anteriores y antes que TLP, estudia las estructuras de datos
más comunes en algorítmica favoreciendo la comprensión de la tercera unidad didáctica
y estudian también la recursión como una segunda estrategia básica de desarrollo
algorítmico, concepto clave en la segunda unidad didáctica. Además refuerzan su
habilidad con los entornos de programación en Java, lo que les beneficiará en el estudio
de la cuarta unidad didáctica.
Si los estudiantes hubieran cursado la asignatura “Programación y Estructura de Datos
avanzadas”, conocerían con cierta profundidad esquemas algorítmicos como divide y
vencerás, el esquema voraz o la exploración exhaustiva de grafos, reforzando algunos
aspectos que se presentan también en la unidad didáctica cuarta de esta asignatura.
13
3. ORIENTACIONES PARA LA REALIZACIÓN DEL PLAN
DE ACTIVIDADES
Un aspecto importante de la metodología es aplicar los conocimientos adquiridos a
algunos de los ejercicios propuestos en el libro básico, aunque no estén resueltos, así
como la realización de los ejercicios propuestos por el equipo docente y la realización
progresiva de la práctica obligatoria.
Los estudiantes pueden consultar con su tutor cualquier aspecto metodológico, logístico
o sobre el contenido de la asignatura a través del entorno virtual de la misma (en el
Campus UNED). En el entorno se puede también establecer discusiones con el resto de
los estudiantes y contactar con el equipo docente si fuera necesario.
Es conveniente acceder con frecuencia al entorno virtual de la asignatura, en el que
aparece material adicional de apoyo durante el curso.
3.1. Medios y recursos
Están descritos en la primera parte de la guía.
Junto a las actividades y enlaces con fuentes de información externas, existe material didáctico propio preparado por el equipo docente con ejercicios que organizan las actividades prácticas del estudiante.
Esta asignatura tiene una práctica de carácter obligatorio, existiendo una serie de
sesiones presenciales de asistencia obligatoria organizadas por los Centros Asociados.
3.2. Evaluación
La evaluación se realizará a partir de un examen, los ejercicios teórico-prácticos
propuestos a lo largo del curso, así como de un trabajo práctico final individual que
organizará y ampliará el trabajo realizado en los ejercicios, según el calendario que se
publicará en el aula virtual al comienzo del periodo lectivo de la asignatura.
La calificación consistirá en:
1. un 60% del examen presencial
2. 30% la práctica obligatoria
3. 10% ejercicios opcionales teórico-prácticos realizados
Para aprobar la asignatura se ha de obtener al menos un 4 sobre 10 en el examen y tener
aprobada la práctica obligatoria. Para optar a matrícula en esta asignatura, al menos hay
que realizar todos los ejercicios opcionales.
14
3.2.1.
Examen
El examen constará de cuatro preguntas, la puntuación de cada una de ellas vendrá indicada en el examen. Estas preguntas intentan valorar los conocimientos teóricos y prácticos que el estudiante ha adquirido.
Cada pregunta deberá ser contestada en la misma hoja donde se enuncia (se podrán usar
ambas caras de la hoja). Si se necesitase más espacio, se deberán utilizar hojas diferentes para cada pregunta.
No se permitirá el uso de ningún tipo de material para la realización del examen.
3.2.2.
Realización de la práctica
El trabajo del curso incluye la realización de una práctica obligatoria de programación.
El enunciado de la misma estará disponible en el curso virtual de la asignatura.
Otros detalles relacionados con la práctica:
 En el centro asociado se organizarán sesiones de monitorización del trabajo
práctico, siendo obligatorio asistir al menos a una de ellas.
 Las fechas de las sesiones obligatorias y la fecha límite de entrega se establecen
en cada centro asociado. El estudiante debe ponerse en contacto con su centro
asociado al principio del cuatrimestre para conocer las citadas fechas, la forma
de entrega, la posibilidad de realizar sesiones especiales para la convocatoria de
septiembre, si es el caso y otros aspectos.
 En el momento de asistir a las citadas sesiones en el centro asociado, el estudiante debería haber dedicado ya un tiempo necesario al enunciado de la práctica, de
forma que pueda resolver tantas dudas como sea posible con su tutor.
 La práctica deberá entregarse al tutor con anterioridad al examen para que éste la
evalúe.
 Si la práctica está aprobada para la convocatoria ordinaria, también se considera
aprobada para la convocatoria extraordinaria.
 Si en una convocatoria no se tienen las dos notas (práctica y examen), la calificación de dicha convocatoria será suspenso.
No se guardará la calificación de la práctica para el siguiente curso.
15