Competencias / Resultados del título |
Código
|
Competencias / Resultados del título
|
A39 |
Capacidad para tener un conocimiento profundo de los principios fundamentales y modelos de la computación y saberlos aplicar para interpretar, seleccionar, valorar, modelar, y crear nuevos conceptos, teorías, usos y desarrollos tecnológicos relacionados con la informática. |
A40 |
Capacidad para conocer los fundamentos teóricos de los lenguajes de programación y las técnicas de procesamiento léxico, sintáctico y semántico asociadas, y saber aplicarlas para la creación, diseño y procesamiento de lenguajes. |
B1 |
Capacidad de resolución de problemas |
C2 |
Dominar la expresión y la comprensión de forma oral y escrita de un idioma extranjero. |
C6 |
Valorar críticamente el conocimiento, la tecnología y la información disponible para resolver los problemas con los que deben enfrentarse. |
Resultados de aprendizaje |
Resultados de aprendizaje |
Competencias / Resultados del título |
Introducir el lambda-cálculo, tipado y no tipado, como núcleo fundamental de los lenguajes de programación. |
A39 A40
|
B1
|
C2 C6
|
Comprender los fundamentos formales de los sistemas de tipado y subtipado |
A39 A40
|
B1
|
C2 C6
|
Comprender y dominar los principios de diseño de los lenguajes orientados a objetos y de las implicaciones que las elecciones de diseño tienen en el desarrollo de programas |
A39 A40
|
B1
|
C6
|
Manejar los principios de diseño de las principales estructuras de control de los lenguajes de programación y sus implicaciones en el desarrollo de programas |
A39 A40
|
B1
|
C6
|
Manejar los principios de diseño de las principales estructuras de datos de los lenguajes de programación y sus implicaciones en el desarrollo de programas |
A39 A40
|
B1
|
C6
|
Contenidos |
Tema |
Subtema |
Formalización de los sistemas de tipos |
Semántica operacional, denotacional y axiómática
Introducción al lambda cálculo
Lambda cálculo tipado |
Lenguajes orientados a objetos |
Fundamentos de diseño de lenguajes orientados a objetos
Problemas de tipado de los lenguajes orientados a objetos |
Principios de diseño de lenguajes de programción |
Nombres, ámbito y ligazón
Flujo de control
Tipos de datos
Subrutinas |
Computabilidad y complejidad |
Computabilidad y lambda cálculo
Clases de complejidad |
Planificación |
Metodologías / pruebas |
Competencias / Resultados |
Horas lectivas (presenciales y virtuales) |
Horas trabajo autónomo |
Horas totales |
Prácticas de laboratorio |
A39 C2 C6 |
14 |
42 |
56 |
Taller |
B1 C6 |
7 |
14 |
21 |
Prueba objetiva |
A40 B1 |
2 |
6 |
8 |
Sesión magistral |
A40 C2 |
21 |
42 |
63 |
|
Atención personalizada |
|
2 |
0 |
2 |
|
(*)Los datos que aparecen en la tabla de planificación són de carácter orientativo, considerando la heterogeneidad de los alumnos |
Metodologías |
Metodologías |
Descripción |
Prácticas de laboratorio |
Actividad que permite que los estudiantes aprendan de forma efectiva a través de la realización de actividades de carácter práctico, en este caso prácticas, demostraciones y exercicios. |
Taller |
Se reaslizan como complemento de todas las demás actividades, en algunos casos de forma autónoma por parte del alumno y en otras ocasiones dirigidas por el profesor. |
Prueba objetiva |
Prueba en la se evaluarán los conecimientos adquiridos tanto en la parte teórica como en la parte práctica de la materia. |
Sesión magistral |
Exposición oral complementada con el uso de medios audiovisuales y la formulación de preguntas dirigidas a los estudantes, con el objetivo de transmitir conocimiento así como de estimular el razonamento crítico del estudiante. |
Atención personalizada |
Metodologías
|
Taller |
Prácticas de laboratorio |
|
Descripción |
El desarrollo de las clases se realizará atendiendo al progreso de los alumnos en las capacidades de comprensión y asimilación de los contenidos impartidos, compaginando el avance general de la clase con una atención específica a aquellos alumnos que presenten mayores dificultades en la tarea del aprendizaje y con un apoyo adicional a aquellos otros que presenten mayor desenvoltura y deseen ampliar conocimientos.
Dado el carácter personalizado de las tutorías, éstas no deben dedicarse a extender los contenidos con nuevos conceptos, sino a aclarar los conceptos ya expuestos. El profesor debe además utilizarlas como una interacción que le permita extraer conclusiones respecto al grado de asimilación de la materia por parte de los alumnos.
|
|
Evaluación |
Metodologías
|
Competencias / Resultados |
Descripción
|
Calificación
|
Prueba objetiva |
A40 B1 |
Examen escrito |
50 |
Prácticas de laboratorio |
A39 C2 C6 |
Trabajos de laboratorio |
50 |
|
Observaciones evaluación |
La parte teórica de la asignatura computa un 50% de la nota. El 50% restante se reparte entre las prácticas y cualquier otra actividad de evaluación que se realice a lo largo del curso. Si las prácticas u otras actividades se llevan a cabo en grupos, todos los miembros del grupo serán responsables solidariamente por el trabajo realizado y entregado y sus posibles consecuencias. Para aprobar la asignatura es preciso aprobar todos y cada uno de los apartados de la evaluación. Para la Segunda Oportunidad, se conservarán los resultados obtenidos en cada apartado en la Primera Oportunidad. En el caso de que non se cumplan las condiciones para aprobar, en las actas figurará la nota mínima entre 4,5 y la que resulte del cálculo conjunto. En el caso del alumnado a tiempo parcial, no se penalizará la inasistencia a clases de prácticas y TGR que estén debidamente justificadas. Se podrán obtener puntos adicionales por realizar las actividades en inglés (por ejemplo, entregar el informe de una práctica en inglés, presentar una práctica en inglés, etc). En ningún caso se penalizará por realizar las actividades en español y/o gallego. Los aspectos relacionados con "dispensa académica", "dedicación al estudio", "permanencia" y "fraude académico" se regirán de acuerdo con la normativa académica vigente de la UDC.
|
Fuentes de información |
Básica
|
Kim B. Bruce (2002). Foundations of Object-Oriented Languages: Types and Semantics. The MIT Press, Cambridge, MA
Fortnow, Lance (2013). P, NP, and the search for the impossible. Princeton University Press
Michael L. Scott (2009). Programming Language Pragmatics. Third edition. Morgan Kaufmann Publishers, Burlington, MA
Benjamin C. Pierce (2002). Types and Programming Languages. The MIT Press, Cambridge, MA |
|
Complementária
|
Robert W. Sebesta (2010). Concepts of Programming Languages. Pearson
Franklyn A. Turbak and David K. Gifford (2008). Design Concepts in Programming Languages. MIT Press, Cambridge, MA
David A. Watt (2004). Programming Language Design Concepts. John Wiley and sons, Chichester, West Suusex, England |
|
Recomendaciones |
Asignaturas que se recomienda haber cursado previamente |
Paradigmas de Programación/614G01014 | Teoría de la computación/614G01039 |
|
Asignaturas que se recomienda cursar simultáneamente |
Procesamiento de Lenguajes/614G01067 |
|
Asignaturas que continúan el temario |
|
Otros comentarios |
- Según se recoje en las distintas normativas de aplicación para la docencia universitaria se incorporará la perspectiva de género en esta asignatura (se usará lenguaje no sexista, se propiciará la intervención en clase de alumnos y alumnas, etc.) - Se trabajará para identificar y modificar prejuicios y actitudes sexistas y se influirá en el entorno para modificarlos y fomentar valores de respeto e igualdad. - En caso de detectar situaciones de discriminación por razón de género se propondrán acciones y medidas para corregirlas. |
|