LP - Lenguajes de Programación

Tamaño: px
Comenzar la demostración a partir de la página:

Download "LP - Lenguajes de Programación"

Transcripción

1 Unidad responsable: FIB - Facultad de Informática de Barcelona Unidad que imparte: CS - Departamento de Ciencias de la Computación Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA (Plan 2010). (Unidad docente Optativa) Créditos ECTS: 6 Idiomas docencia: Catalán Profesorado Responsable: Otros: - Albert Rubio Gimeno ([email protected]) - Guillem Godoy Balil ([email protected]) - Jordi Petit Silvestre ([email protected]) - Jose Carmona Vargas ([email protected]) Capacidades previas Capacidades previas sobre lógica adquiridas en la asignatura Fundamentos Matemáticos (FM): - Conocimiento de los conceptos básicos de lógica proposicional y de predicados - Conocimientos sobre Inferencia lógica. Capacidades previas sobre programación adquiridas en las asignaturas de Estructura de Datos y Algoritmos (EDA) y Proyectos de Programación (PROP): - Conocimiento sobre programación. - Conocimiento sobre lenguajes de programación orientados a objetos Requisitos - Pre-requisito PROP Competencias de la titulación a las cuales contribuye la asignatura Específicas: CCO1.2. Demostrar conocimiento de 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, el diseño y el procesamiento de lenguajes. Genéricas: G4. COMUNICACIÓN EFICAZ ORAL Y ESCRITA: Comunicar de forma oral y escrita con otras personas conocimientos, procedimientos, resultados e ideas. Participar en debates sobre temas propios de la actividad del ingeniero técnico en informática. G6. USO SOLVENTE DE LOS RECURSOS DE INFORMACIÓN: Gestionar la adquisición, la estructuración, el análisis y la visualización de datos e información del ámbito de la ingeniería informática y valorar de forma crítica los resultados de esta gestión. 1 / 8

2 Metodologías docentes Las clases están divididas en sesiones de teoría y laboratorio. En las sesiones de teoría se desarrollarán los conocimientos de la asignatura, intercalando la exposición de nuevo material teórico con ejemplos y la interacción con los alumnos para discutir los conceptos. En las clases de laboratorio se pondrán en prácticas los conceptos introducidos y se aplicarán a lenguajes de programación y problemas concretos. Se realizarán tres pequeñas prácticas que irán asociadas a las diferentes pruebas de evaluación. Objetivos de aprendizaje de la asignatura 1.Conocer los diferentes pasos de la compilación, en particular el análisis léxico, el sintáctico y el semántico. 2.Learn tools for generating lexical analyzers and parsers. 3.Conocer las diferencias entre un compilador y un intérprete. 4.Diferenciar las características de un lenguaje de programación. Identificar sus puntos fuertes y sus puntos débiles y ser capaz de justificar una elección. 5.Conocer las características principales de los lenguajes de programación funcionales. 6.Conocer construcciones avanzadas de los lenguajes de programación. 7.Ser capaz de modelar y especificar problemas de hardware o software usando lenguajes funcionales. 8.Conocer las características principales de los lenguajes de scripting. 9.Ser capaz de aprender nuevos lenguajes de programación de forma autónoma. Horas totales de dedicación del estudiantado Dedicación total: 150h Grupo grande/teoría: 30h 20.00% Grupo mediano/prácticas: 0h 0.00% Grupo pequeño/laboratorio: 30h 20.00% Actividades dirigidas: 6h 4.00% Aprendizaje autónomo: 84h 56.00% 2 / 8

3 Contenidos Introducción a los lenguajes de programación. Turing completitud. Paradigmas de la programación. Características principales. Introducción a la compilación. Compilación e interpretación. El análisis léxico. El análisis sintáctico. Gramáticas. Tabla de símbolos. Árbol de sintaxis abstracta. Análisis semántico. Generación de código. Lenguajes funcionales. Fundamentos. Pattern Matching. Evaluación Eager/Lazy. Introducción a Haskell. Sistemas de tipos. Los tipos en los lenguajes de programación. Los tipos y la fiabilidad. Sistemas de tipos en los lenguajes funcionales y en los lenguajes orientados a objetos. Programación de orden superior Las funciones de orden superior. Aplicaciones. Programación de funciones de orden superior en lenguajes funcionales y orientados a objetos. Especificación y modelado usando lenguajes funcionales Lenguajes declarativos en la especificación y el modelado. Prototipado. Especificaciones ejecutables. Transformación de programas. 3 / 8

4 Llenguajes de scripting Características. Utilización de lenguajes de scripting. Combinación de paradigmas. Tipos. Orden superior. Breve introducción a Python. 4 / 8

5 Planificación de actividades Introducción a los lenguajes de programación Dedicación: 6h Grupo pequeño/laboratorio: 0h Aprendizaje autónomo: 4h 4, 5, 9 Introducción a la compilación Dedicación: 22h Grupo grande/teoría: 6h Grupo pequeño/laboratorio: 8h Aprendizaje autónomo: 8h 1, 2, 3 CL Dedicación: 10h Actividades dirigidas: 2h Aprendizaje autónomo: 8h 1, 2, 3 Lenguajes funcionales Dedicación: 18h Grupo grande/teoría: 4h Grupo pequeño/laboratorio: 6h Aprendizaje autónomo: 8h 4, 5, 9 Sistemas de tipos Dedicación: 10h Grupo grande/teoría: 4h Grupo pequeño/laboratorio: 0h 5 / 8

6 4, 5, 6, 9 Programación de ordren superior Dedicación: 10h Grupo pequeño/laboratorio: 2h 4, 5, 6, 9 Especificación y modelado usando llenguajes funcionales Dedicación: 12h Grupo grande/teoría: 4h Grupo pequeño/laboratorio: 2h 5, 7 EP Dedicación: 12h Actividades dirigidas: 2h Aprendizaje autónomo: 10h 5, 6 Lenguajes de scripting Dedicación: 14h Grupo pequeño/laboratorio: 6h 3, 4, 8, 9 6 / 8

7 Aprendizaje de un nuevo lenguaje de programación Dedicación: 10h Grupo pequeño/laboratorio: 2h Actividades dirigidas: 2h Aprendizaje autónomo: 4h CT Dedicación: 7h Actividades dirigidas: 1h 4, 9 Actividades de repaso Dedicación: 4h Grupo pequeño/laboratorio: 2h Aprendizaje autónomo: 0h EF Dedicación: 15h Actividades dirigidas: 3h Aprendizaje autónomo: 12h 4, 5, 6, 7, 8 7 / 8

8 Sistema de calificación Se realizarán tres pruebas más un trabajo dirigido (TD) que además de tener un peso en la nota de la asignatura, servirá para evaluar las competencias transversales. Las pruebas CL, EP y EF tendrán asociadas un pequeño trabajo práctico que será necesario haber entregado antes de realizar la correspondiente prueba y que llamaremos PCL, PEP y PEF. La nota del trabajo dirigido se obtendrá de la prueba TC, y se descompondrá en tres partes: -TC1 que evaluará los conocimientos adquiridos sobre el lenguaje de programación asignado. -TC2 que evaluará la competencia de G4.3 mediante una breve presentación y una discusión con el profesor y el resto de estudiantes, además de la documentación entregada. -TC3 que evaluará la competencia de G6.3 según la descripción realizada de las fuentes consultadas y el referenciando que se realice. Así como del resultado obtenido en TC1. La nota final se obtendrá a partir de cuatro notas: Nota1 = 30% PCL +70% CL Nota2 = 30% PEP +70% EP Nota3 = 10% PEF +90% EF NOTA4 = TC1 con la siguiente ponderación: NOTA FINAL = 20% Nota1 + 30% Nota2 + 40% Nota3 + 10% NOTA4 Bibliografía Básica: Wilhelm, R.; Maurer, D. Compiler design. Addison-Wesley, ISBN Aho, A.V.; Sethi, R.; Ullman, J.D. Compilers: principles, techniques, and tools. 2nd ed. Addison-Wesley, ISBN Mitchell, J.C. Concepts in programming languages. Cambridge University Press, ISBN Scott, M.L. Programming language pragmatics [en línea]. 3rd ed. Morgan Kaufmann, 2009Disponible a: < ISBN Thompson, S. Haskell: the craft of functional programming. 3rd ed. Addison-Wesley, ISBN Ruiz Jiménez, B.C. Razonando con Haskell: un curso sobre programación funcional. Thomson-Paraninfo, ISBN / 8

ECSDI - Ingeniería del Conocimiento y Sistemas Distribuidos Inteligentes

ECSDI - Ingeniería del Conocimiento y Sistemas Distribuidos Inteligentes Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2015 270 - FIB - Facultad de Informática de Barcelona 723 - CS - Departamento de Ciencias de la Computación GRADO EN INGENIERÍA

Más detalles

SI - Seguridad Informática

SI - Seguridad Informática Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA

Más detalles

AC2 - Arquitectura de Computadores II

AC2 - Arquitectura de Computadores II Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA

Más detalles

SID - Sistemas Inteligentes Distribuidos

SID - Sistemas Inteligentes Distribuidos Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 723 - CS - Departamento de Ciencias de la Computación Curso: Titulación: 2017 GRADO EN INGENIERÍA INFORMÁTICA (Plan

Más detalles

240EO016 - Automatización de Procesos

240EO016 - Automatización de Procesos Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 240 - ETSEIB - Escuela Técnica Superior de Ingeniería Industrial de Barcelona 707 - ESAII - Departamento de Ingeniería de

Más detalles

Modelado y Simulación de Sistemas

Modelado y Simulación de Sistemas Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 205 - ESEIAAT - Escuela Superior de Ingenierías Industriales, Aeroespacial y Audiovisual de Terrassa 707 - ESAII - Departamento

Más detalles

240AR031 - Sistemas Empotrados y de Tiempo Real

240AR031 - Sistemas Empotrados y de Tiempo Real Unidad responsable: 240 - ETSEIB - Escuela Técnica Superior de Ingeniería Industrial de Barcelona Unidad que imparte: 707 - ESAII - Departamento de Ingeniería de Sistemas, Automática e Informática Industrial

Más detalles

Identificación y Simulación de Sistemas Dinámicos

Identificación y Simulación de Sistemas Dinámicos Unidad responsable: 240 - ETSEIB - Escuela Técnica Superior de Ingeniería Industrial de Barcelona Unidad que imparte: 707 - ESAII - Departamento de Ingeniería de Sistemas, Automática e Informática Industrial

Más detalles

Modelado y Simulación de Sistemas

Modelado y Simulación de Sistemas Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 205 - ESEIAAT - Escuela Superior de Ingenierías Industrial, Aeroespacial y Audiovisual de Terrassa 707 - ESAII - Departamento

Más detalles

GRIA - Gestión de Residuos en la Industria Alimentaria

GRIA - Gestión de Residuos en la Industria Alimentaria Unidad responsable: 390 - ESAB - Escuela Superior de Agricultura de Barcelona Unidad que imparte: 745 - EAB - Departamento de Ingeniería Agroalimentaria y Biotecnología Curso: Titulación: 2017 GRADO EN

Más detalles

Simulación y Optimización de Procesos Químicos

Simulación y Optimización de Procesos Químicos Unidad responsable: 240 - ETSEIB - Escuela Técnica Superior de Ingeniería Industrial de Barcelona Unidad que imparte: 713 - EQ - Departamento de Ingeniería Química Curso: Titulación: 2016 GRADO EN INGENIERÍA

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO COMPILADORES 1764 7 o 09 Asignatura Clave Semestre Créditos Ingeniería Eléctrica Ingeniería en Computación Ingeniería

Más detalles

Sistemas de Información Geográfica Aplicada al Urbanismo y la Edificación (Gis y Bim)

Sistemas de Información Geográfica Aplicada al Urbanismo y la Edificación (Gis y Bim) Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 751 - DECA - Departamento de Ingeniería Civil y Ambiental

Más detalles

VJ - Videojuegos

VJ - Videojuegos Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 723 - CS - Departamento de Ciencias de la Computación Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA (Plan

Más detalles

SICSB - Sistemas de Información y Comunicaciones en la Sanidad

SICSB - Sistemas de Información y Comunicaciones en la Sanidad Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 295 - EEBE - Escuela de Ingeniería de Barcelona Este 707 - ESAII - Departamento de Ingeniería de Sistemas, Automática e Informática

Más detalles

ESC1-I2O01 - Estructura de Computadores I

ESC1-I2O01 - Estructura de Computadores I Unidad responsable: 340 - EPSEVG - Escuela Politécnica Superior de Ingeniería de Vilanova i la Geltrú Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2017

Más detalles

PEM - Gestión de Proyectos en Ingeniería

PEM - Gestión de Proyectos en Ingeniería Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 820 - EEBE - Escuela de Ingeniería de Barcelona Este 717 - EGE - Departamento de Expresión Gráfica en la Ingeniería GRADO

Más detalles

MI - Microcomputadores

MI - Microcomputadores Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 330 - EPSEM - Escuela Politécnica Superior de Ingeniería de Manresa 750 - EMIT - Departamento de Ingeniería Minera, Industrial

Más detalles

Informe Pericial

Informe Pericial Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 751 - DECA - Departamento de Ingeniería Civil y Ambiental

Más detalles

ASDP - Habilidades Académicas para el Desarrollo de Proyectos en Inglés

ASDP - Habilidades Académicas para el Desarrollo de Proyectos en Inglés Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 270 - FIB - Facultad de Informática de Barcelona 756 - THATC - Departamento de Teoría e Historia de la Arquitectura y Técnicas

Más detalles

BID - Diseño de Instrumentación Biomédica

BID - Diseño de Instrumentación Biomédica Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 230 - ETSETB - Escuela Técnica Superior de Ingeniería de Telecomunicación de Barcelona 710 - EEL - Departamento de Ingeniería

Más detalles

FM - Fundamentos Matemáticos

FM - Fundamentos Matemáticos Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 749 - MAT - Departamento de Matemáticas Curso: Titulación: 2017 GRADO EN INGENIERÍA INFORMÁTICA (Plan 2010). (Unidad

Más detalles

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias

Más detalles

CCQ - Computación y Criptografía Cuánticas

CCQ - Computación y Criptografía Cuánticas Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 748 - FIS - Departamento de Física Curso: Titulación: 2017 GRADO EN INGENIERÍA INFORMÁTICA (Plan 2010). (Unidad

Más detalles

Sistemas de Información Geográfica

Sistemas de Información Geográfica Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 751 - DECA - Departamento de Ingeniería Civil y Ambiental

Más detalles

Evolución y Control de Incendios en Edificios

Evolución y Control de Incendios en Edificios Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 748 - FIS - Departamento de Física 737 - RMEE - Departamento

Más detalles

SIM - Simulación

SIM - Simulación Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 715 - EIO - Departamento de Estadística e Investigación Operativa Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA

Más detalles

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias

Más detalles

GEOEN - Generación Eléctrica Eólica

GEOEN - Generación Eléctrica Eólica Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 820 - EUETIB - Escuela Universitaria de Ingeniería Técnica Industrial de Barcelona 709 - EE - Departamento de Ingeniería Eléctrica

Más detalles

Tratamiento Preciso de Datos Gnss

Tratamiento Preciso de Datos Gnss Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 751 - DECA - Departamento de Ingeniería Civil y Ambiental

Más detalles

TCIIM - Tecnología de la Construcción e Instalaciones Industriales

TCIIM - Tecnología de la Construcción e Instalaciones Industriales Unidad responsable: 820 - EUETIB - Escuela Universitaria de Ingeniería Técnica Industrial de Barcelona Unidad que imparte: 737 - RMEE - Departamento de Resistencia de Materiales y Estructuras en la Ingeniería

Más detalles

APS - Automatización con Plc y Scada

APS - Automatización con Plc y Scada Unidad responsable: 330 - EPSEM - Escuela Politécnica Superior de Ingeniería de Manresa Unidad que imparte: 709 - EE - Departamento de Ingeniería Eléctrica Curso: Titulación: 2017 GRADO EN INGENIERÍA ELÉCTRICA

Más detalles

SO2 - Sistemas Operativos II

SO2 - Sistemas Operativos II Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA

Más detalles

MICROS - Microondas

MICROS - Microondas Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 230 - ETSETB - Escuela Técnica Superior de Ingeniería de Telecomunicación de Barcelona 739 - TSC - Departamento de Teoría

Más detalles

MOP - Metodología y Orientación de Proyectos

MOP - Metodología y Orientación de Proyectos Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 205 - ESEIAAT - Escuela Superior de Ingenierías Industrial, Aeroespacial y Audiovisual de Terrassa 717 - EGE - Departamento

Más detalles

Topografía Aplicada a la Ingeniería Civil

Topografía Aplicada a la Ingeniería Civil Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 310 - EPSEB - Escuela Politécnica Superior de Edificación de Barcelona 751 - DECA - Departamento de Ingeniería Civil y Ambiental

Más detalles

IE - Instrumentación Electrónica

IE - Instrumentación Electrónica Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 330 - EPSEM - Escuela Politécnica Superior de Ingeniería de Manresa 750 - EMIT - Departamento de Ingeniería Minera, Industrial

Más detalles

PFDA - Proyecto y Fabricación Digital en la Arquitectura

PFDA - Proyecto y Fabricación Digital en la Arquitectura Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2015 210 - ETSAB - Escuela Técnica Superior de Arquitectura de Barcelona 753 - TA - Departamento de Tecnología de la Arquitectura

Más detalles