Última actualización: 10/07/2020


Curso Académico: 2020/2021

Programación orientada a objetos
(15995)
Grado en Ingeniería Informática (Plan 2018) (Plan: 431 - Estudio: 218)


Coordinador/a: VALLS FERRAN, JOSE MARIA

Departamento asignado a la asignatura: Departamento de Informática

Tipo: Optativa
Créditos: 6.0 ECTS

Curso:
Cuatrimestre:




Requisitos (Asignaturas o materias cuyo conocimiento se presupone)
Programación, Estructura de Datos y Algoritmos
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. (CECRI6) 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. (CECRI8)
Descripción de contenidos: Programa
Tema 1. Introducción a la Programación Orientada a Objetos. Modelado 1.1. Introducción a la POO 1.2. Comparación con otros paradigmas de programación. 1.3. Modelado Orientado a Objetos. Tema 2. Clases y Objetos en Java. Herencia y polimorfismo 2.1 Composición y herencia 2.2 Clases abstractas 2.3 Herencia múltiple. Interfaces 2.4 Polimorfismo Tema 3. Excepciones, clases de utilidad y paquetes. Entrada y Salida 3.1 Excepciones 3.2 Clases de utilidad 3.3 Documentación y Paquetes 3.4 E/S estándar. Ficheros en Java Tema 4. Algoritmos avanzados 4.1 Complejidad Computacional 4.2 Algoritmos recursivos 4.3 Algoritmos de búsqueda 4.4 Algoritmos avanzados de ordenación 4.5 Diseño de algoritmos complejos con Orientación a Objetos Tema 5. Patrones de diseño. Otros lenguajes orientados a objetos 5.1 Introducción. 5.2 Catálogo de patrones de diseño 5.3 Otros lenguajes orientados a objetos
Actividades formativas, metodología a utilizar y régimen de tutorías
Esta asignatura optativa no se oferta en el curso 20-21 con lo que no se especifican las actividades especiales debidas a COVID-19, sino solamente las actividades previstas en una situación de normalidad. - Clases magistrales. La asignatura se impartirá mediante lecciones magistrales para dar a conocer los conceptos fundamentales y avanzados de la POO, los algoritmos complejos y las técnicas de diseño. Se motivará la participación activa de los alumnos y se incentivará la discusión de forma que se argumente sobre los motivos en utilizar determinadas técnicas de programación para resolver determinados problemas. 3 ECTS - Clases prácticas. Las clases de teoría se reforzarán con sesiones de tipo práctico en aulas informáticas donde se realizarán ejercicios que permitirán fijar y aplicar los conocimientos teóricos adquiridos, así como las prácticas evaluables. 3ECTS
Sistema de evaluación
  • Peso porcentual del Examen Final 60
  • Peso porcentual del resto de la evaluación 40

Bibliografía básica
  • Bruce Eckel. Piensa en Java. Pearson/Prentice Hall . 2007
  • David Camacho, José Mª Valls, Jesús García, José M. Molina, Enrique Bueno. Programación, algoritmos y ejercicios resueltos en Java. Pearson/Prentice Hall. 2003
Bibliografía complementaria
  • Brassard, Giles. Fundamentos de Algoritmia. Prentice hall international. 1997
  • Gamma Erich. Patrones de diseño. Addison Wesley. 2003

El programa de la asignatura podría sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.