Guías Académicas

PROGRAMACIÓN III

PROGRAMACIÓN III

Doble Titulación de Grado en Administración y Dirección de Empresas y Grado en Ingeniería Informática

Curso 2024/2025

1. Datos de la asignatura

(Fecha última modificación: 07-06-24 12:14)
Código
101112
Plan
2020/21
ECTS
6
Carácter
Curso
2
Periodicidad
Primer Semestre
Idioma
ESPAÑOL
Área
LENGUAJES Y SISTEMAS INFORMÁTICOS
Departamento
Informática y Automática
Plataforma Virtual

STUDIUM

Datos del profesorado

Profesor/Profesora
Alicia García Holgado
Grupo/s
PA2
Centro
Fac. Ciencias
Departamento
Informática y Automática
Área
Ciencia de la Computación e Inteligencia Artific.
Despacho
E4000
Horario de tutorías
Solicitar por correo electrónico
URL Web
URL Web https://produccioncientifica.usal.es/investigadores/56361/detalle
E-mail
aliciagh@usal.es
Teléfono
923294500 Ext. 6076
Profesor/Profesora
Alfonso González Briones
Grupo/s
PA2,PB1
Centro
Fac. Ciencias
Departamento
Informática y Automática
Área
Ciencia de la Computación e Inteligencia Artific.
Despacho
Edificio I+D+i Universidad de Salamanca
Horario de tutorías
URL Web
https://bisite.usal.es/es/grupo/equipo/Alfonso
E-mail
alfonsogb@usal.es
Teléfono
923294500. Ext.5479
Profesor/Profesora
Álvaro Lozano Murciego
Grupo/s
PA3 y PB2
Centro
Fac. Ciencias
Departamento
Informática y Automática
Área
Lenguajes y Sistemas Informáticos
Despacho
F2400 – Edificio Ciencias, frente a Aula Magna II
Horario de tutorías
Solicitar por correo electrónico
URL Web
https://produccioncientifica.usal.es/investigadores/148041/detalle
E-mail
loza@usal.es
Teléfono
923294500 Ext. 6072
Coordinador/Coordinadora
Luis Augusto Silva
Grupo/s
TA y TB , PA1, PB3 ,GMAt, Estadistica
Centro
Fac. Ciencias
Departamento
Informática y Automática
Área
Ciencia de la Computación e Inteligencia Artific.
Despacho
F3017
Horario de tutorías
Solicitar por correo electrónico
URL Web
URL Web https://produccioncientifica.usal.es/investigadores/193138/detalle
E-mail
luisaugustos@usal.es
Teléfono
923294500 Ext. 6082

2. Recomendaciones previas

Asignaturas que se recomienda haber cursado (Grado en Ingeniería Informática):

 

Se recomienda no cursar Programación III sin aprobar previamente Programación I y Programación II, por cuanto la Programación Orientada a Objetos se basa en Programación Estructurada que es objeto de estudio en Programación I y II.

 

Asignaturas que son continuación (Grado en Ingeniería Informática):

Los conceptos tratados en la asignatura Programación III es de aplicación directa en Ingeniería del Software (I y II), así como en Interfaces Gráficas de Usuario (3º curso), Desarrollo de Aplicaciones Avanzadas (4º curso), Animación Digital (4º curso) y en general en todas las asignaturas que hagan uso de Programación Orientada a Objetos (POO).

3. Objetivos

Tomando como base el paradigma de Programación Estructurada, el primer objetivo es aportar al alumno los conocimientos teóricos asociados al Modelo de objetos en su sentido abstracto, poniendo de manifiesto los conceptos de clase y objeto como unidad de construcción del software.

Un segundo objetivo es mostrar al alumno de forma práctica métodos y algoritmos que ofrecen las bibliotecas asociadas un lenguaje de programación que siga el Paradigma de Orientación a Objetos, para así conocer de forma general sus posibilidades. De este modo se hace uso de clases maduras y se facilita la reutilización del código.

Como tercer objetivo, durante el curso se construyen proyectos software de forma individual y/o en grupo, donde se pondrán en práctica los principios del Modelo Objeto en la construcción y reutilización de software.

4. Competencias a adquirir | Resultados de Aprendizaje

Básicas / Generales | Conocimientos.

Se deben relacionar las competencias que se describan con las competencias generales y específicas del título. Se recomienda codificar las competencias (CG xx1, CEyy2, CTzz2) para facilitar las referencias a ellas a lo largo de la guía.

(Básicas):CB3, CB4, CB5 (Comunes):CC1, CC6, CC7, CC8, CC14, CC16, CC17

Específicas | Habilidades.

TI3, TI6, CO2, CO3, CO5, CO6

Transversales | Competencias.

CT1, CT3, CT8, CT9, CT12, CT16, CT21, CT22

5. Contenidos

Teoría.

Objetivos Teóricos

Se trata de un estudio detallado de los conceptos básicos del paradigma de Programación Orientada a Objetos, plasmados en el estudio del lenguaje de programación Java. La relación de temas estudiados, que se abordarán desde un punto de vista teórico y práctico, es la siguiente:

  1. Introducción a la programación orientada a objetos (POO)
  2. Clases y objetos, construcción y destrucción de objetos
  3. Herencia y Polimorfismo dinámico.
  4. Excepciones y sus tipos en Java
  5. Patrón MVC: historia, propósito y ejemplo en Java
  6. Interfaces
  7. Persistencia
  8. Colecciones en Java ArrayList Set y Map
  9. Mecanismos de documentación y control de versiones

 

 

Práctica.

Objetivos Prácticos

Los temas mencionados anteriormente se ejercitan directamente con el estudio de un Lenguaje de Programación Orientado a Objetos (LPOO). Desde el punto de vista de la práctica, los contenidos que se abordan son los que se exponen a continuación.

  1. Estudio práctico del lenguaje de Programación Orientado a Objetos: Java.
  2. Construcción de programas en Java y aplicando los principios de la orientación a objetos.
  3. Construcción de Software Reutilizable (bibliotecas de clases) empleando el lenguaje Java.

6. Metodologías Docentes

Las actividades formativas que se proponen para esta materia son las siguientes:

Actividades presenciales:

  • Lección magistral: exposición de teoría y resolución de problemas
  • Realización de prácticas guiadas en laboratorio
  • Sesiones de tutorías, seguimiento y evaluación, individuales o en grupo
  • Exposición de trabajos y pruebas de evaluación

Actividades no presenciales:

  • Estudio autónomo por parte del estudiante
  • Revisión bibliográfica y búsqueda de información
  • Realización de trabajos, prácticas libres, informes de prácticas

Para esta materia las actividades formativas presenciales, que implican una interacción profesor-estudiante, suponen el 40% de los créditos ECTS. En las asignaturas la distribución temporal asignada a cada actividad se corresponde con el modelo de tipo C (modelos presentados en el apartado 5.1 de la memoria del Grado).

El contenido teórico de las materias presentado en las clases magistrales junto con su aplicación en las clases de problemas y las prácticas guiadas facilitará la asimilación de las competencias anteriormente descritas. En las sesiones y seminarios tutelados se resolverán las dudas y el trabajo personal permitirá afianzar dichas competencias.

 

7. Distribución de las Metodologías Docentes

8. Recursos

Libros de consulta para el alumno.

Español

Construcción de Software Orientado a Objetos. Meyer, B. Prentice-Hall

Cómo programar Java. Deitel y Deitel. Pearson Educación. 10ª Edicióno posterior

El Lenguaje de Programación Java. Arnold, K., Gosling, J., Holmes, J. Pearson Educación.

Piensa en Java. Eckel, Bruce (PDF Gratuito, Mindstorms)

Inglés

Java  How to program. Deitel, P. and Deitel, H. 8th Ed. Prentice-Hall. ISBN 0132662361

The Java Programming Language. Arnold, K. Gosling, J. Holmes, 4th. Ed. Prentice-Hall. ISBN 0321349806

Otras referencias bibliográficas, electrónicas o cualquier otro tipo de recurso.

9. Evaluación

Criterios de evaluación.

El objetivo propuesto en todos los mecanismos de evaluación es la creación de programas o fragmentos de programas, según se indique. Concretamente, el control escrito y el trabajo práctico requieren que el alumno desarrolle un programa completo. El programa completo desarrollado en el control será necesariamente más breve que el desarrollado en el trabajo práctico. Tanto en un caso como en otro, deberán aplicarse los principios de programación orientada a objetos (no solo de programación estructurada, que corresponden a cursos anteriores). Así mismo deberá emplearse el patrón Modelo-Vista-Controlador, y se hará uso intensivo de las bibliotecas de clases explicadas y utilizadas de forma práctica a lo largo del curso.

 

Sistemas de evaluación.

La calificación final de la asignatura se obtendrá de forma ponderada a través de las calificaciones finales obtenidas en dos apartados: evaluación continua (40%) y prueba final (60%). Los porcentajes asociados a cada instrumento de evaluación se detallan a continuación:

  • Control (por escrito, presencial):                                              20%
  • Trabajo práctico (entrega individual o grupal):                         20%
  • Examen final (por escrito, presencial):                                     60%

 

 

Recomendaciones para la evaluación.

La asignatura Programación III es práctica, esto es, requiere resolver por completo de forma personal los ejercicios que se plantean y/o resuelven en clase.  También es conveniente investigar de forma individual otros problemas, intentando siempre comprender los principios implicados. En caso de duda, consulte al profesor en prácticas, o por medio de tutorías.

Resulta recomendable llevar la asignatura al día. Con este fin, el alumno necesita sus propios apuntes, escritos por el alumno en clase y completados en casa previamente a su uso como guía para realizar personalmente los ejercicios planteados y/o resueltos. Los apuntes del alumno no son las transparencias del profesor; son lo que el alumno toma tras asistir a clase.

Recuperación: Los ejercicios propuestos y/o realizados en clase deben ser realizados por el alumno de forma completa (partiendo de cero) y autónoma. Téngase en cuenta que en los ejercicios escritos se pide realizar un programa completo y no se tendrá asistencia.

Las frases “pues en casa/a mi me funciona” y “pero vamos, está bien” NO suponen la corrección de un ejercicio o programa. Por el contrario, suelen chocar frontalmente con los principios de orientación a objetos (frente a programación estructurada), o con el uso de bibliotecas (frente a rutas fijas) y/o con el uso de “algoritmos” de longitud O(n) frente a algoritmos de longitud O(0)

10. Organización docente semanal