GUÍA DE APRENDIZAJE PROGRAMACION ORIENTADA A OBJETOS Y CONCURRENTE Datos Descriptivos TITULACIÓN: CENTROS IMPLICADOS: GRADO EN INGENIERIA DE COMPUTADORES E.U. DE INFORMATICA CICLO: Grado sin atribuciones MÓDULO: MATERIA: Lenguajes de Programación ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS Y CONCURRENTE CURSO: 2 º SEMESTRE: Semestre 2º (Febrero-Junio) DEPARTAMENTO RESPONSABLE: SISTEMAS INTELIGENTES APLICADOS CRÉDITOS EUROPEOS: 6 CARÁCTER: OBLIGATORIA CURSO ACADÉMICO: 2011/2012 PERIODO DE IMPARTICIÓN: Semestre 2º (Febrero-Junio) Datos Comunes ITINERARIO: IDIOMAS IMPARTICIÓN: Español OTROS IDIOMAS IMPARTICIÓN: HORAS/CRÉDITO: 26
Profesorado COORDINADOR: ANTONIO HERNANDO ESTEBAN NOMBRE DESPACHO EMAIL EN INGLÉS ANTONIO HERNANDO ESTEBAN 4210 antonio.hernando@upm.es No FRANCISCO JAVIER ALCALA CASADO 4212 javier.alcala@upm.es No (*) Profesores externos en cursiva. Tutorías NOMBRE TUTORÍAS Lugar Día De A Grupos GRUPOS ASIGNADOS EN: Nº de grupos Teoría 2 Prácticas 4 Laboratorio 2
Requisitos previos necesarios ASIGNATURAS SUPERADAS OTROS REQUISITOS Conocimientos previos recomendados ASIGNATURAS PREVIAS RECOMENDADAS FUNDAMENTOS DE PROGRAMACION CONOCIMIENTOS PREVIOS OTROS CONOCIMIENTOS
Competencias CÓDIGO COMPETENCIA NIVEL RA E3 Capacidad de analizar y evaluar arquitecturas de computadores, incluyendo plataformas paralelas y distribuidas, así como desarrollar y optimizar software de para las mismas. N2 E4 Capacidad de diseñar e implementar software de sistema y de comunicaciones. N2 G1 Comunicación oral y escrita. N2 G10 Capacidad de análisis y síntesis. N4 G12 Motivación por la calidad y la mejora continua. N4 G13 Razonamiento crítico. N4
G2 Creatividad. N3 G6 Uso de la lengua inglesa. N2 G8 Trabajo en equipo. N2 G9 Aprendizaje autónomo. N4 I12 Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos. N3 I13 Conocimiento, diseño y utilización de forma eficiente los tipos y estructuras de datos más adecuados a la resolución de un problema. N3 I14 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. N4
I17 Conocimiento y aplicación de las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas. N2 I20 Conocimiento y aplicación de los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real. N4 I23 Capacidad para diseñar y evaluar interfaces persona computador que garanticen la accesibilidad y usabilidad a los sistemas, servicios y aplicaciones informáticas. N1 I7 Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente. N3 I8 Capacidad para planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas informáticos en todos los ámbitos, liderando su puesta en marcha y su mejora continua y valorando su impacto económico y social. N2
Resultados de aprendizaje CÓDIGO DESCRIPCIÓN Comprende los elementos del lenguaje de programación Organiza y programa atendiendo a los compromisos de eficiencia, robustez, mantenimiento y claridad Diseña las soluciones adecuadamente Prueba y verifica la corrección de las aplicaciones Utiliza entornos y herramientas de desarrollo
Indicadores de logro CÓDIGO INDICADOR RA IN_01 El alumno deberá conocer los fundamentos de la programación orientada a objetos IN_02 El alumno deberá conocer la sintaxis del lenguaje Java IN_03 El alumno deberá conocer los conceptos básicos de clase, atributo y relación. IN_04 El alumno deberá conocer los fundamentos de herencia y polimorfismo IN_05 El alumno deberá conocer los fundamentos de la tecnología.net así como las diferencias con la tecnología Java IN_06 El alumno deberá conocer los distintos tipos de asociaciones entre clases IN_07 El alumno deberá conocer los fundamentos de la programación orientada a eventos y su integración con la tecnología.net y Java
IN_08 IN_09 IN_10 El alumno deberá conocer los fundamentos de las excepciones y los tipos genéricos El alumno deberá conocer los fundamentos de las colecciones de datos El alumno deberá conocer los fundamentos de la programación concurrente.
Contenidos específicos (temario) TEMA / CAPÍTULO Tema 1. Introducción a la POO Conceptos de la POO APARTADO IN_01 Tema 10. Programación concurrente Principios conceptuales IN_10 Exclusión y sincronización IN_10 Programación concurrente IN_10 Tema 2. Lenguaje de programación Java Aspectos generales de la gramática IN_02 Sentencias condicionales IN_02 Sentencias de bucle IN_02 Tema 3. y objetos : atributos y métodos IN_03 Objetos IN_03 Mensajes IN_03 Elementos estáticos IN_03
Tema 4. Herencia y polimorfismo Herencia IN_04 abstractas IN_04 Interfaces IN_04 Tema 5. Tecnología.NET: El lenguaje C# Descripción de la tecnología.net IN_05 Sintaxis de C# IN_05 Introducción a la interfaz gráfica IN_05 Tema 6. Colaboración entre clases Relación de clases IN_06 Visibilidad IN_06 Dependencias en las colaboraciones IN_06 Tema 7. Programación orientada a eventos Delegados IN_07 Eventos IN_07 Eventos en JAVA. Interfaz gráfico IN_07 Tema 8. Excepciones y tipos genéricos
Excepciones IN_08 Tipos Genéricos IN_08 Tema 9. Colecciones de datos List, Stack IN_09
Breve descripción de las modalidades organizativas utilizadas y métodos de enseñanza empleados MODALIDAD DESCRIPCIÓN MÉTODO MÉTODOS DE ENSEÑANZA Los alumnos harán en grupo que tendrán que entregar en fechas fijadas. de Problemas Realización guiada de aplicaciones en modalidad tutorizada por el profesor.
Cronograma de trabajo de la asignatura SEMANA ACTIVIDADES 1 Tema 1 2 Tema 2 3 Tema 3 4 Tema 4 5 Entrega de práctica 1 de Problemas Laboratorio 10 hrs. Sí Evaluación continua 2 7,69 6 Tema 5 7 Tema 6 8
Tema 6 9 Tema 7 (1ª parte) 10 Tema 7 (2ª parte) 11 Entrega de de Problemas Laboratorio 10 hrs. Sí Evaluación continua 3 8,33 12 Tema 8 13 Tema 9 14 Tema 10 15 Entrega de práctica de Problemas Laboratorio 10 hrs. Sí Evaluación continua 3 8,33 16
Examen Final de Problemas Laboratorio 6 hrs. Sí Examen final 32 24,36
Evaluación de la asignatura SEMANA EVALUACIONES Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 5 Entrega de práctica 1 Laboratorio Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 11 Entrega de Laboratorio Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 15 Entrega de práctica Laboratorio Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 16 Examen Final Laboratorio Examen final
Criterios de calificación de la asignatura En la convocatoria ordinaria, el alumno utilizará el sistema de evaluación continuada a través de. No obstante, tendrá 21 días naturales de plazo, desde el inicio del semestre, para informar por escrito al coordinador de la asignatura para optar por la evaluación mediante sólo prueba final. En las convocatorias extraordinarias el alumno utilizará el sistema de sólo prueba final.
Recursos didácticos TIPO Bibliografía Recursos web Equipamiento DESCRIPCIÓN Programación Orientada a Objetos con Java. Jesús Bernal Bermúdez. Dpto. de publicaciones de la E.U.I de Madrid, 2010 JAVA, Jesús Bobadilla Sancho, Antonio Hernando Esteban, Dpto de publicaciones de E.U.I de Madrid, 2010 Tutoriales de Sun Microsystems Introducción a la Programación Orientada a Objetos. Timothy Budd. Addison-Wesley Iberoamericana, 1994 Como programar en java. H. M. Dietel. Prentice Hall. 5ta Edición, 2004 El lenguaje de programación Java. K. Arnold, J. Gosling & D. Holmes. Pearson Educación, 2005 Web de la asignatura: http://www.sia.eui.upm.es/isa Plataforma educativa de la asignatura (Moodle): http://www.sia.eui.upm.es/moodle Aula informática con ordenadores, cañón de luz y pizarra
Otra información reseñable