Lenguajes y Paradigmas de Programación
(Curso Académico 2018 - 2019)
Imprimir Mostrar Todo

1. Datos descriptivos de la asignatura
  • Código: 139263014
  • Centro: Escuela Superior de Ingeniería y Tecnología
  • Lugar de impartición: Escuela Superior de Ingeniería y Tecnología
  • Titulación: Grado en Ingeniería Informática
  • Plan de Estudios: 2010 (publicado en 21-03-2011)
  • Rama de conocimiento: Ingeniería y Arquitectura
  • Itinerario/Intensificación:
  • Departamento/s:
  • Área/s de conocimiento:
    • Lenguajes y Sistemas Informáticos
  • Curso: 3
  • Carácter: Obligatoria
  • Duración: Primer cuatrimestre
  • Créditos ECTS: 6,0
  • Modalidad de impartición: Presencial
  • Horario: Ver horario
  • Dirección web de la asignatura: Ver web de la asignatura
  • Idioma: Español
2. Requisitos para cursar la asignatura
No existen requisitos para cursar la asignatura
3. Profesorado que imparte la asignatura

Profesor/a Coordinador/a: COROMOTO ANTONIA LEON HERNANDEZ

Grupo: Teoría (1) - Problemas (PA101 y PA102) - Prácticas (PE101, PE102, PE103 y PE104)
Área de conocimiento: Lenguajes y Sistemas Informáticos
Tutorías Primer cuatrimestre:
HorarioLugar
Lunes: 10:30-12:30. Martes: 9:30-12:30. Miércoles: 9:30-10:30 (on-line). Para evitar aglomeraciones y esperas innecesarias en las tutorias presenciales se recomienda solicitar cita previa. El horario de tutorías es orientativo y puede sufrir variaciones, consulte el Aula Virtual para confirmar. La hora de tutoría de los miércoles será on-line debido a la participación en el Programa de Apoyo a la Docencia Presencial mediante Herramientas TIC, modalidad B y se usarán chats síncronos y/o hangouts. Facultad de Física y Matemáticas. 4ta planta. Despacho #89.
Tutorías Segundo cuatrimestre:
HorarioLugar
Lunes: 10:30-12:30. Martes: 9:30-12:30. Miércoles: 9:30-10:30 (on-line). Para evitar aglomeraciones y esperas innecesarias en las tutorias presenciales se recomienda solicitar cita previa. El horario de tutorías es orientativo y puede sufrir variaciones, consulte el Aula Virtual para confirmar. La hora de tutoría de los miércoles será on-line debido a la participación en el Programa de Apoyo a la Docencia Presencial mediante Herramientas TIC, modalidad B y se usarán chats síncronos y/o hangouts. Facultad de Física y Matemáticas. 4ta planta. Despacho #89.
Teléfono (despacho/tutoría): 922 31 81 80
Correo electrónico: cleon@ull.es
Web docente: Ver web del docente
4. Contextualización de la asignatura en el plan de estudio
  • Bloque formativo al que pertenece la asignatura: Fundamentos Tecnológicos de Ingeniería Informática
  • Perfil profesional: Ingeniero Técnico en Informática
5. Competencias

Competencias Específicas

  • C14 - Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados.
  • C20 - Conocimiento y aplicación de los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real.

Competencias Generales

  • CG8 - Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
  • CG9 - Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.

Transversales

  • T1 - Capacidad de actuar autónomamente.
  • T6 - Capacidad de comunicación efectiva en inglés.
  • T7 - Capacidad de comunicación efectiva (en expresión y comprensión) oral y escrita, con especial énfasis en la redacción de documentación técnica.
  • T9 - Capacidad para argumentar y justificar lógicamente las decisiones tomadas y las opiniones.
  • T12 - Capacidad de relación interpersonal.
  • T13 - Capacidad para encontrar, relacionar y estructurar información proveniente de diversas fuentes y de integrar ideas y conocimientos.
  • T16 - Capacidad de planificación y organización del trabajo personal.
  • T20 - Capacidad de trabajar en situaciones de falta de información y/o con restricciones temporales y/o de recursos.
  • T21 - Capacidad para el razonamiento crítico, lógico y matemático.
  • T23 - Capacidad de abstracción: capacidad de crear y utilizar modelos que reflejen situaciones reales.
  • T25 - Capacidad de análisis, síntesis y evaluación.
6. Contenidos de la asignatura

Contenidos teóricos y prácticos de la asignatura

Tema 1. Introducción: Modelos de programación.
Lenguajes y Herramientas de Programación. Control de Versiones. Pruebas Unitarias. Desarrollo Dirigido por Pruebas.

Tema 2. Programación imperativa.
Estructuras de Datos. Subprogramas. Abstracción y Encapsulamiento.

Tema 3. Programación orientada a objetos.
Clases, Objetos, métodos. Encapsulamiento, Abstracción, Herencia, Polimorfismo. Mixins. Meta Programación. Lenguajes de Dominio Específico. Programación Orientada a Aspectos.

Tema 4. Programación declarativa: lógica y funcional.
Funcional: Funciones de Orden Superior. Lambdas. Clausuras. Evaluación Perezosa. Memoización. Listas Infinitas.
Declarativa: Cláusulas. Hechos. Consultas. Reglas.

Tema 5. Programación concurrente y paralela.
Corrutinas. Hilos. Procesos. Programación Distribuida. Computación de Alto Rendimiento. Computación en la Nube.

Actividades a desarrollar en otro idioma

Parte de la bibliografía y los manuales de las herramientas utilizadas está en inglés, por lo que los alumnos tienen que realizar lecturas compresivas en ese idioma. Sin embargo, esta asignatura no es de itinerario, por lo tanto estas actividades no forman parte de la evaluación.
7. Metodología y volumen de trabajo del estudiante

Descripción

Para cada tema, el equipo docente hará una exposición teórica de los conceptos fundamentales, haciendo hincapié en aquellos contenidos que se consideren de mayor relevancia (Clases teóricas). El profesorado se apoyará en material multimedia o en demostraciones in situ, que faciliten la presentación de los contenidos. Por cuenta propia, tras la clase, cada estudiante deberá complementar la información aportada por los docentes mediante la elaboración de su manual de estudio o apuntes (Estudio/preparación de clases teóricas). Para facilitar este proceso de auto-aprendizaje, el profesorado indicará, en cada clase, qué apartados concretos de los contenidos se han tratado y las referencias.

Además, con el objetivo de complementar la formación con un aprendizaje práctico, el profesorado resolverá casos prácticos y planteará ejercicios (Clases prácticas), que el estudiante tendrá que resolver de forma autónoma (Estudio/preparación de clases prácticas). Los ejercicios que presenten mayor dificultad para los estudiantes serán corregidos en clase mediante la participación activa del alumnado y del profesor en las clases de problemas y prácticas. Se distingue entre ejercicios dirigidos (Asistencia a tutorias) y ejercicios autónomos . Las calificaciones obtenidas en los ejercicios autónomos se utilizaran como evaluación del proceso formativo de la asignatura.

Por último, se realizarán trabajos con sus correspondientes informes en los que se apliquen los conocimientos adquiridos (Realización de trabajos - individual/grupal). Se promoverá el trabajo en equipo en la realización de estos proyectos. Los resultados y conclusiones se defenderán en una reunión grupal (Seminario).

El seguimiento continuo de los estudiantes será llevado a cabo mediante el Aula Virtual de la asignatura. Por ello, se ha solicitado la participación de la asignatura en el "Programa de Apoyo a la Docencia Presencial mediante herramientas TIC" en las modalidades de: (1) "Apoyo a la docencia presencial de asignatura", incluyendo las siguientes actividades virtuales: foros para tareas colaborativas; evaluación mediante cuestionarios virtuales y tareas a través del aula virtual; tutoriales para iniciarse en el uso de las herramientas informáticas utilizadas. (2) "Virtualización de Tutorias", se hará uso de chats síncronos y/o hangouts.

Actividades formativas en créditos ECTS, su metodología de enseñanza-aprendizaje y su relación con las competencias que debe adquirir el estudiante

Actividades formativas Horas presenciales Horas de trabajo autónomo Total horas Relación con competencias
Clases teóricas 30,00 0,00 30,0 [T25], [T23], [T21], [T16], [T12], [CG9], [CG8], [C20], [C14]
Clases prácticas (aula / sala de demostraciones / prácticas laboratorio) 17,00 0,00 17,0 [T25], [T23], [T21], [T20], [T16], [T13], [T12], [T9], [T7], [T6], [T1], [CG9], [CG8], [C20], [C14]
Realización de seminarios u otras actividades complementarias 2,00 7,00 9,0 [CG8], [CG9], [C14], [C20], [T7], [T9], [T12], [T13], [T21], [T23], [T25]
Realización de trabajos (individual/grupal) 0,00 28,00 28,0 [T25], [T23], [T21], [T20], [T16], [T13], [T12], [T6], [T1], [CG9], [CG8], [C20], [C14]
Estudio/preparación de clases teóricas 0,00 10,00 10,0 [CG8], [CG9], [C14], [C20], [T1]
Realización de exámenes 4,00 0,00 4,0 [T25]
Asistencia a tutorías 7,00 0,00 7,0 [T16], [CG9], [CG8], [C20], [C14]
Estudio autónomo individual o en grupo 0,00 45,00 45,0 [CG8], [CG9], [C14], [C20], [T1], [T6], [T7], [T9], [T12], [T13], [T16], [T20], [T21], [T23], [T25]
Total horas 60.0 90.0 150.0
Total ECTS 6,00
8. Bibliografía / Recursos

Bibliografía básica

1. Scott, Michael L., "Programming language pragmatics". 2nd edition. Elsevier, 2006.
2. Thomas, Dave; Fowler, Chad; Hunt Andy. "Programming Ruby 1.9". The Pragmatic Programmers, LLC. 2010.
3. Chacon, Scott. "Pro Git". Apress; 1st edition. August 26, 2009.

Bibliografía complementaria

Otros recursos

GitHub Classroom: https://classroom.github.com/
9. Sistema de evaluación y calificación

Descripción

La Evaluación de la asignatura se rige por el Reglamento de Evaluación y Calificación de la Universidad de La Laguna (BOC de 19 de enero de 2016), o el que la Universidad tenga vigente, además de por lo establecido en la Memoria de Verificación inicial o posteriores modificaciones.

1. Es obligatorio asistir a clases y hacer uso de los foros y tutorías tanto presenciales como virtuales.

2. El sistema de evaluación de la asignatura incluye:
• Un examen final (pruebas objetivas) que constituye el 60% de la calificación y
• Evaluación continua ( Valoración de las actividades prácticas en el laboratorio e Informes memorias de prácticas ) que constituye el 40% restante de la calificación.

3. Se aplicará un esquema de evaluación continua combinando:
• Ejercicios prácticos donde se realizarán tareas reales y/o simuladas.
• Prácticas individuales y/o grupales que se realizarán en los laboratorios frente al ordenador.

4. En caso de no superar la evaluación continua, después de finalizar las clases del semestre el alumno dispondrá del examen de la parte práctica de la asignatura en los períodos de exámenes oficiales, con las convocatorias fijadas por la Universidad.

5. Para calcular la calificación final se exigirá el cumplimiento de dos condiciones:
a) Tener una puntuación total de, al menos, 5,0 puntos sobre 10,0 en cada una de las actividades prácticas de evaluación continua, o en el examen de prácticas y
b) Obtener, al menos, 5,0 puntos sobre 10,0 en el examen final.
En caso de incumplir alguna de las condiciones anteriores, la nota final será de suspenso y como valor de la calificación aquella que no supere los 5.0 puntos.

6. La siguiente tabla presenta los tipos de prueba, las competencias, los criterios de evaluación y su ponderación:

Estrategia Evaluativa

Tipo de prueba Competencias Criterios Ponderación
Pruebas objetivas [T25], [T23], [T21], [T20], [T16], [T9], [T6], [T1], [CG9], [CG8], [C20], [C14] * Adecuación a lo solicitado
* Concreción en la redacción
* Nivel de conocimientos adquiridos
* Nivel de aplicabilidad
60 %
Informes memorias de prácticas [CG8], [CG9], [C14], [C20], [T1], [T6], [T9], [T13], [T16], [T21], [T23], [T25] * Adecuación a lo solicitado
* Concreción en la redacción
* Nivel de conocimientos adquiridos
* Nivel de aplicabilidad
20 %
Valoración de las actividades prácticas en el laboratorio [T25], [T23], [T21], [T20], [T16], [T13], [T12], [T9], [T7], [T6], [T1], [CG9], [CG8], [C20], [C14] * Adecuación a lo solicitado
* Concreción en la redacción
* Nivel de conocimientos adquiridos
* Nivel de aplicabilidad
20 %
10. Resultados de Aprendizaje
Autónomamente analizar, evaluar e integrar información técnica sobre los paradigmas y lenguajes de programación más idóneos para resolver problemas y proponer una implantación en sistemas concurrentes, paralelos, distribuidos y en tiempo real y argumentar por escrito sus propuestas.
Tanto de forma individual como en un equipo de trabajo, encontrar, analizar, evaluar e integrar información técnica sobre el paradigma y el lenguaje de programación más idóneo para resolver problemas y realizar una síntesis por escrito y una defensa oral.
Tanto de forma individual como en un equipo de trabajo, utilizar técnicas y metodologías actuales de desarrollo de software para resolver problemas, seleccionando las herramientas adecuadas para la gestión, el control de versiones, el desarrollo de pruebas, la integración e implantación en sistemas concurrentes, paralelos, distribuidos y en tiempo real. Realizar una síntesis y una defensa oral.
11. Cronograma / calendario de la asignatura

Descripción

En las guías docentes la planificación temporal de la programación sólo tiene la intención de establecer unos referentes u orientaciones para presentar la materia atendiendo a unos criterios cronológicos, sin embargo son solamente a título estimativo, de modo que el profesorado puede modificar – si así lo demanda el desarrollo de la materia – dicha planificación temporal.
 

Primer cuatrimestre

Semana Temas Actividades de enseñanza aprendizaje Horas de trabajo presencial Horas de trabajo autónomo Total
Semana 1: 1 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 2: 1-2 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 3: 2 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 4: 2 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
Seminarios.
4.00 8.00 12.00
Semana 5: 3 Clases teóricas.
Clases prácticas.
 
2.00 3.00 5.00
Semana 6: 3 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 7: 3 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 8: 3-4 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 9: 4 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
Seminarios.
4.00 8.00 12.00
Semana 10: 4 Clases teóricas.
Clases prácticas.
2.00 3.00 5.00
Semana 11: 4 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 12: 4-5 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 6.00 10.00
Semana 13: 5 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 3.00 7.00
Semana 14: 5 Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
4.00 8.00 12.00
Semana 15: 5 Clases teóricas.
Clases prácticas.
2.00 3.00 5.00
Semana 16 a 18: Evaluación Realización de exámenes, evaluación y trabajo autónomo del alumno para la preparación de examen y la evaluación. 6.00 6.00 12.00
Total 60.00 90.00 150.00
Fecha de última modificación: 04-07-2018
Fecha de aprobación: 06-07-2018