Versión imprimible Curso Académico
Lenguajes y Paradigmas de Programación
Curso 2017/18
1. Datos Descriptivos de la Asignatura
ASIGNATURA: Lenguajes y Paradigmas de Programación CÓDIGO: 139263014
- Centro: 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: Cuatrimestral
- Créditos ECTS: 6.0
- Horario: http://www.ull.es/view/centros/etsii/Tercero_5/es
- Dirección web de la asignatura: http://www.campusvirtual.ull.es
- 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 (PE104 y PE105)
- Departamento: Ingeniería Informática y de Sistemas
- Área de conocimiento: Lenguajes y Sistemas Informáticos
- Lugar Tutoría: Facultad de Física y Matemáticas. 4ta planta. Despacho #89.
- Horario Tutoría: 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.
- Teléfono (despacho/tutoría): 922 31 81 80
- Correo electrónico: cleon@ull.es
- Dirección web docente: http://www.campusvirtual.ull.es
Profesor/a: GARA MIRANDA VALLADARES
- Grupo: Prácticas (PE101, PE102 y PE103)
- Departamento: Ingeniería Informática y de Sistemas
- Área de conocimiento: Lenguajes y Sistemas Informáticos
- Lugar Tutoría: Área de despachos de la segunda planta de la Torre Profesor Agustín Arévalo
- Horario Tutoría: Lunes de 15:30 a 18:30 y jueves de 9:00 a 12:00. El horario de tutorías es orientativo y prevalecerá el horario que aparezca en el aula virtual de la asignatura. La última hora de tutoría de ambos días será online 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.
- Teléfono (despacho/tutoría): 922845023
- Correo electrónico: gmiranda@ull.es
- Dirección web docente: http://www.campusvirtual.ull.es


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 profesorado 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 cada clase, el alumnado 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.

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 alumnado tendrá que resolver de forma autónoma (Estudio/preparación de clases prácticas). Los ejercicios que presenten mayor dificultad para los alumnos 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 de este proyecto. Los resultados y conclusiones se defenderán en una reunión grupal (Seminario).

El seguimiento continuo del alumnado 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; vídeo 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      30  [CG8], [CG9], [C14], [C20], [T12], [T16], [T21], [T23], [T25]
Clases prácticas (aula / sala de demostraciones / prácticas laboratorio)  17.00      17  [CG8], [CG9], [C14], [C20], [T1], [T6], [T7], [T9], [T12], [T13], [T16], [T20], [T21], [T23], [T25]
Realización de seminarios u otras actividades complementarias  2.00   7.00   9  [CG8], [CG9], [C14], [C20], [T7], [T9], [T12], [T13], [T21], [T23], [T25]
Realización de trabajos (individual/grupal)     28.00   28  [CG8], [CG9], [C14], [C20], [T1], [T6], [T12], [T13], [T16], [T20], [T21], [T23], [T25]
Estudio/preparación clases teóricas     10.00   10  [CG8], [CG9], [C14], [C20], [T1]
Realización de exámenes  4.00      4  [T25]
Asistencia a tutorías  7.00      7  [CG8], [CG9], [C14], [C20], [T16]
Estudio autónomo individual o en grupo     45.00   45  [CG8], [CG9], [C14], [C20], [T1], [T6], [T7], [T9], [T12], [T13], [T16], [T20], [T21], [T23], [T25]
Total horas  60   90   150 
Total ECTS  6 


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.


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  [CG8], [CG9], [C14], [C20], [T1], [T6], [T9], [T16], [T20], [T21], [T23], [T25]   * 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  [CG8], [CG9], [C14], [C20], [T1], [T6], [T7], [T9], [T12], [T13], [T16], [T20], [T21], [T23], [T25]   * 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 
Semana 2:  1-2   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 3:  2   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 4:  2   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
Seminarios. 
 4.00   8.00   12 
Semana 5:  3   Clases teóricas.
Clases prácticas.

 
 2.00   3.00   5 
Semana 6:  3   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 7:  3   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 8:  3-4   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 9:  4   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
Seminarios. 
 4.00   8.00   12 
Semana 10:  4   Clases teóricas.
Clases prácticas.
 
 2.00   3.00   5 
Semana 11:  4   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 12:  4-5   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   6.00   10 
Semana 13:  5   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   3.00   7 
Semana 14:  5   Clases teóricas.
Clases prácticas.
Asistencia a tutorias.
Estudio autónomo o en grupo.
 
 4.00   8.00   12 
Semana 15:  5   Clases teóricas.
Clases prácticas.
 
 2.00   3.00   5 
Semanas 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 
Total horas 60 90 150


Fecha de última modificación: 27-07-2017
Fecha de aprobación: 27-07-2017