GUÍA DE APRENDIZAJE PROGRAMACION ORIENTADA A OBJETOS Datos Descriptivos TITULACIÓN: CENTROS IMPLICADOS: GRADO EN INGENIERIA DEL SOFTWARE E.U. DE INFORMATICA CICLO: Grado sin atribuciones MÓDULO: MATERIA: PROGRAMACIÓN ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS CURSO: 1 º SEMESTRE: Semestre 2º (Febrero-Junio) DEPARTAMENTO RESPONSABLE: LENGUAJES, PROYECTOS Y SISTEMAS INFORMATICOS 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: ROSA MARIA PINERO FERNANDEZ NOMBRE DESPACHO EMAIL EN INGLÉS ROSA MARIA PINERO FERNANDEZ 1208-2 r.pinero@upm.es No FELIX CANTERO MARTIN 1205-1 felix.cantero@upm.es No FERNANDO ARROYO MONTORO 6005 fernando.arroyo@upm.es No FCO.JAVIER SAENZ MARCILLA 1106 javier.saenzm@upm.es No (*) Profesores externos en cursiva. Tutorías NOMBRE TUTORÍAS Lugar Día De A Grupos GRUPOS ASIGNADOS EN: Nº de grupos 4 Prácticas 0 Laboratorio 8
Requisitos previos necesarios ASIGNATURAS SUPERADAS OTROS REQUISITOS Conocimientos previos recomendados ASIGNATURAS PREVIAS RECOMENDADAS FUNDAMENTOS DE LA PROGRAMACION CONOCIMIENTOS PREVIOS RA1.-Comprende los elementos de lenguajes de programación de un paradigma estructurado RA2.- Identifica las principales estructuras de datos y técnicas algorítmicas RA3.- Modela y diseña soluciones atendiendo a los compromisos de eficiencia y modularidad RA4.- Implementa, prueba y verifica soluciones atendiendo a criterios de eficacia, legibilidad y documentación RA5.- Utiliza entornos y herramientas de desarrollo OTROS CONOCIMIENTOS
Competencias CÓDIGO COMPETENCIA NIVEL RA E5 Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales. N3 G1 Capacidad de análisis y síntesis. N3 G10, adaptación a nuevas situaciones y motivación por el desarrollo profesional permanente. N2 G11 Creatividad. N2 G14 Motivación por la calidad. N3 G6 de problemas. N3
G9 Razonamiento crítico. N3 I22 Conocimiento de los fundamentos del uso y programación de los computadores, los sistemas operativos, las bases de datos y, en general, los programas informáticos con aplicación en ingeniería. N3 I5 Conocimiento, administración y mantenimiento sistemas, servicios y aplicaciones informáticas. N1 I6 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. N2 I7 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 I8 Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma N3
robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados.
Resultados de aprendizaje CÓDIGO DESCRIPCIÓN Comprende los elementos de lenguajes de programación de distintos paradigmas Identifica las principales estructuras de datos y técnicas algorítmicas y sus complejidades Modela y diseña soluciones atendiendo a los compromisos de eficiencia y modularidad Implementa, prueba y verifica soluciones atendiendo a criterios de eficacia, legibilidad y documentación Utiliza entornos y herramientas de desarrollo
Indicadores de logro CÓDIGO INDICADOR RA IN_01 Los estudiantes serán capaces de reconocer los elementos fundamentales de un programa orientado a objetos (clase, objeto, estado, atributos, métodos y mensajes) IN_02 Los estudiantes serán capaces de realizar programas sencillos orientados a objetos en los que se utilicen distintos aspectos del lenguaje de programación. IN_03 Los estudiantes serán capaces de reconocer y aplicar las diferentes relaciones que se establecen entre las distintas clases que forman un programa orientado a objetos. IN_04 Los estudiantes serán capaces de desarrollar un programa orientado a objetos sencillo utilizando relaciones entre las clases que lo configuran. IN_05 Los estudiantes serán capaces de reconocer y definir relaciones de clasificación establecidas en un dominio establecido de clases y objetos.
IN_06 IN_07 IN_08 Los estudiantes deben poder distinguir, utilizar y definir relaciones de herencia entre clases en un programa orientado a objetos. Los estudiantes serán capaces de utilizar polimorfismo en el desarrollo de aplicaciones orientadas a objetos de baja complejidad. Los estudiantes serán capaces de realizar programas sencillos orientados a objetos en los que, puedan utilizar ficheros, conocer el tratamiento básico de excepciones y definir y utilizar clases parametrizadas
Contenidos específicos (temario) TEMA / CAPÍTULO Tema 1. Introducción a la Programación Orientada a Objetos Fundamentos de la Programación Orientada a Objetos APARTADO IN_01 Elementos Básicos de la POO. y Objetos IN_01 Construcción de Programas Orientados a Objetos. IN_02 Tema 2. Programas Orientado a Objetos Relaciones entre IN_03 Tipos de Relaciones IN_04 Tema 3. Herencia Relación de Herencia IN_05 Abstractas IN_06 Tema 4. Polimorfismo Enlace dinámico IN_07 Métodos virtuales IN_07 Aplicaciones del polimorfismo IN_07 Tema 5. Otros Conceptos de POO
Archivos y Flujos IN_08 Excepciones IN_08 Plantillas IN_08
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 El profesor expone verbalmente los conceptos de la materia en cada uno de los temas Se realizan sesiones en el CIC donde se plantean pequeños supuestos prácticos para que el estudiante desarrolle las distintas partes del temario vistas en clase. Durante el desarrollo o a la finalización de una clase se plantea un problema o cuestión teórica en la que el estudiante tiene que demostrar los conocimientos y competencias adquiridas en la sesión de la clase teórica. Contrato de de de Se plantea un problema que los estudiantes tienen que resolver desarrollando estrategias nuevas a partir de los conocimientos de la clase magistral.
Cronograma de trabajo de la asignatura SEMANA ACTIVIDADES Clase T1 Aula 3 hrs. No 1,92 1 Practica 1 Tema1 de Clase T1 2 Clase T1 de Práctica 2 Tema1 de Clase T1 3 Clase T1 de Practica 3 Tema1 de Clase T1 4 Clase T1 de Practica 4 Tema1 de 5 Clase T1
Clase T1 de Practica 5 Tema1 Contrato de Prueba escrita T1 Aula 1 hrs. Sí Evaluación continua 1 1,28 Clase T2 6 Clase T2 de Práctica 1 Tema2 Contrato de Clase T2 Clase T2 de 7 Practica 2 Tema2 de Prueba escrita T1, T2 Aula 1 hrs. Sí Evaluación continua 1 1,28 Clase T3 8 Clase T3 de Practica 1 Tema3 de 9 Clase T3 Clase T3 de
Practica 2 Tema3 de Clase T3 10 Clase T3 de Practica 3 Tema3 de Clase T4 Clase T4 de 11 Practica 1 Tema4 Contrato de Prueba escrita T1, T2, T3 Aula 1 hrs. Sí Evaluación continua 1 1,28 Clase T4 12 Clase T4 de Practica 2 Tema4 de 13 Clase T4 Clase T4 de Practica Final
Contrato de Clase T4 14 Clase T4 de Practica Final de Clase T5 Clase T5 de 15 Practica Final Contrato de Prueba escrita T1, T2, T3, T4 Aula 1 hrs. Sí Evaluación continua 1 1,28 Clase T5 16 Clase T5 de Practica Final Contrato de Prueba escrita Final Otros 3 hrs. Sí Evaluación continua 1 2,56 17 Examen Final de Otros 3 hrs. Sí Examen final 9 7,69 Otros 0 hrs. Sí Examen final 0 0
Entrega Prácticas
Evaluación de la asignatura SEMANA EVALUACIONES Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 5 Prueba escrita T1 Aula Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 7 Prueba escrita T1, T2 Aula Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 11 Prueba escrita T1, T2, T3 Aula Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. 15 Prueba escrita T1, T2, T3, T4 Aula Evaluación continua Actividad Lugar Tipo Técnica eval. Peso(%) Eval. min. Prueba escrita Final Otros Evaluación continua 17 Examen Final Otros Examen final Entrega Prácticas Otros Examen final
Criterios de calificación de la asignatura 1. Participación activa en las actividades propuestas en el aula: puesta en común de trabajos, resolución positiva de problemas, planteamiento de soluciones alternativas. 2. Evaluación de pruebas de conocimiento teórico práctico Superación del 40 % del porcentaje asignado. 3. Evaluación de actividades teniendo en cuenta la resolución satisfactoria, claridad en la presentación y documentación, explicando razonadamente las decisiones tomadas durante el diseño de las soluciones, Superación del 40 % del porcentaje asignado 4. Prueba final acumulativa con los conceptos más importantes que se han trabajado en el semestre. Superación del 40 % del porcentaje asignado Para superar la asignatura por EVALUACIÓN CONTINUA es necesario obtener al menos el 40% del porcentaje asignado en cada uno de los apartados 2, 3 y 4. y obtener una calificación total mayor o igual a 5 puntos. EVALUACIÓN NO CONTINUA Prueba final de conocimiento teórico práctico 10 puntos. o 7.5 puntos correspondientes a cuestiones y problemas sobre aspectos contenidos en el temario. o 2.5 puntos de valoración del trabajo desarrollado sobre los proyectos que se tendrán que presentar al examen. Para aprobar la asignatura será necesario superar al menos un 40% en cada una de las partes anteriores y obtener una calificación total mayor o igual a 5 puntos
Recursos didácticos TIPO Bibliografía DESCRIPCIÓN An Introduction to Object-Oriented Programming. 3ª Ed. Timothy Budd. Addison-Wesley, 2002 C++: Cómo programar. Harvey M. Deitel. Pearson Education, 2009 El Lenguaje de Programación C++. Bjarne Stroustrup. Ed. especial. Addison-Wesley, 2002. Recursos web Equipamiento http://www.lpsi.eui.upm.es/webpoo/ Moodle de la asignatura en la UPM Prácticas: Sala del Centro de Informática y Comunicaciones de la EUI completamente equipada con PC s, cañón de luz, pizarra y con capacidad para 36 alumnos : Aula de la EUI con capacidad para más de 60 alumnos con cañón de luz conectado a PC en la mesa del profesor y sistema de audio inalámbrico. Pizarra clásica. Software: Se utiliza el entorno de desarrollo integrado de Visual 2010 de Microsoft
Otra información reseñable