Diseño y programación orientada a objetos Código:  75.564    Créditos:  6
Consulta de los datos generales   Descripción   La asignatura en el conjunto del plan de estudios   Campos profesionales en que se proyecta   Conocimientos previos   Información previa a la matrícula   Objetivos y competencias   Contenidos   Consulta de los recursos de aprendizaje de la UOC para la asignatura   Información adicional sobre los recursos de aprendizaje y herramientas de apoyo   Información adicional sobre la bibliografía y fuentes de información   Metodología   Información sobre la evaluación en la UOC   Consulta del modelo de evaluación   Evaluación Contínua   Evaluación final   Feedback  
Este es el plan docente de la asignatura para el segundo semestre del curso 2023-2024. Podéis consultar si la asignatura se ofrece este semestre en el espacio del campus Más UOC / La universidad / Planes de estudios). Una vez empiece la docencia, tenéis que consultarlo en el aula. El plan docente puede estar sujeto a cambios.

La asignatura tiene como principal objetivo la comprensión de los conceptos generales del paradigma de la programación orientada a objetos (POO) y su puesta en práctica mediante el desarrollo de aplicaciones con lenguajes de programación orientados a objetos.

Los elementos del paradigma de la POO se enseñan desvinculados de cualquier lenguaje con el objetivo de que el estudiante comprenda los conceptos de manera "pura".  No obstante, durante el semestre se intenta mostrar/comparar cómo los lenguajes más utilizados ponen en práctica los diferentes conceptos de la POO.

A lo largo de la asignatura se enseña cómo diseñar/modelar programas (apoyándose en el Lenguaje de Modelado Unificado, UML), para posteriormente implementar el diseño creado mediante un lenguaje de programación concreto, en nuestro caso, Java.

Así pues, el enfoque de la asignatura es fundamentalmente práctico, orientado a la resolución de ejercicios, lo cual requiere una dedicación especial por parte del estudiante.

Amunt

La asignatura está pensada como la extensión de las asignaturas "Fundamentos de Programación" y "Prácticas de Programación" que cubren los fundamentos básicos de la programación en lenguajes estructurados. Concretamente, se añade la Orientación a Objetos sobre la base de las habilidades de construcción de programas que se adquirieron en dicha asignatura.

Hay que tener en cuenta que el paradigma de la programación orientada a objetos se encuentra hoy en prácticamente todas las áreas de la informática, por lo que aparecerá también en otras asignaturas de la carrera. Por este motivo, otras asignaturas posteriores del Plan de Estudios requerirán los conocimientos de esta materia como punto de partida.

Amunt

La comprensión de los conceptos de la orientación a objetos es un requisito fundamental para el ejercicio profesional en el ámbito general del Desarrollo de Sistemas Software, incluyendo las actividades de Análisis, Diseño y Programación.

Dentro del desarrollo de la profesión los lenguajes de modelado de información como UML son el medio de comunicación y documentación más difundido en las empresas de desarrollo, debido a la proliferación de herramientas de Ingeniería del Software Asistida por Ordenador (Computer Aided Software Engineering, CASE) basadas en ellos y a las Metodologías de Desarrollo que las utilizan como notación.

Adicionalmente, el enfoque orientado a objetos se emplea en áreas de gestión en la empresa, como es el caso del Modelado o la Reingeniería de los Procesos de Negocio.

Por otro lado, los lenguajes orientados a objetos ocupan un lugar central en la industria del software, debido a la amplia difusión de lenguajes de este tipo (como Java, C++ o el más reciente C#), y podemos considerar que su conocimiento es requisito imprescindible para las actividades de desarrollo en general.

Amunt

Son necesarios los conocimientos adquiridos en las asignaturas "Fundamentos de Programación" y "Prácticas de Programación". Por lo tanto, la superación de esta asignatura se considera un prerrequisito imprescindible antes de comenzar con "Diseño y Programación Orientados a Objetos". 

Es fundamental tener soltura en la formulación de algoritmos y en la programación estructurada, ya que en la presente asignatura NO se enseña algorítmica ni los conceptos básicos de la programación, p.ej. bucles, condicionales, etc.

Amunt

Es imprescindible haber superado las asignaturas "Fundamentos de Programación" y "Prácticas de Programación".

También es recomendable haber superado la asignatura "Ingeniería del Software" ya que facilita la comprensión de algunos conceptos además que permite tener un experiencia más enriquecedora de la asignatura.

Amunt

Competencias dentro del Grado en Ingeniería en Informática

  • Capacidad de diseñar y construir aplicaciones informáticas mediante técnicas de desarrollo, integración y reutilización.

Objetivos de la asignatura

El objetivo principal de esta asignatura es aprender los conceptos de orientación a objetos y saber aplicarlos al desarrollo de programas orientados a objetos con el lenguaje Java, a partir de los conocimientos previos de programación que tiene el estudiante. Este objetivo se descompone y complementa con los siguientes objetivos:

  • Aprender e interiorizar los conceptos de orientación a objetos.
  • Entender la influencia del paradigma de la orientación a objetos en otros ámbitos de la informática, además de la programación.
  • Conocer los beneficios que aporta la orientación a objetos y las razones por las que se producen.
  • Comprender los motivos por los que en la orientación a objetos se obtienen unos niveles tan altos de reutilización y los requisitos que nos impone el hecho de querer conseguir esta reutilización.
  • Introducirse en los diagramas de clases UML.
  • Aprender a programar en Java los conceptos teóricos mencionados y desarrollar un trabajo práctico en este lenguaje utilizando los conceptos de orientación a objetos.

Amunt

La asignatura se compone de dos grandes bloques, uno teórico y otro de carácter más práctico. Ambos bloques se realizarán en paralelo durante el curso, puesto que se complementan.

Estos conocimientos del bloque teórico están estructurados en los siguientes módulos:

1. Introducción al paradigma de la programación orientada a objetos

2. Abstracción y encapsulación

3. Asociaciones (relaciones entres objetos)

4. Herencia (relaciones entre clases)

Por su parte, el bloque práctico permitirá materializar los conocimientos adquiridos en el bloque teórico. Como documentación de ayuda, el estudiante dispondrá de una guía de Java que explica la sintaxis y los conceptos básicos de este lenguaje.

Amunt

Material Soporte
Diseño y programación orientados a objetos Audiovisual

Amunt

El material docente de la asignatura comprende: 

  • Plan docente (este documento).
  • Materiales didácticos (4 módulos de teoria + 1 guía de Java)
  • Audiovisual (6 vídeos de animación).

Para la parte práctica el estudiante deberá instalar el JDK, un IDE (recomendamos Eclipse y/o IntelliJ IDEA) y un programa para realizar diagramas de clases UML (recomendamos DIA).

Amunt

La bibliografía recomendada se encuentra indicada en los materiales didácticos.

Amunt

Esta asignatura trabaja de manera conjunta la parte teórica y práctica. El hilo conductor de la asignatura es el material didáctico compuesto por 4 módulos teóricos y 1 guía de Java. Los primeros cuatro módulos explican la teoría del paradigma de la programación orientada a objetos (POO), mientras que la guía de Java explica la sintaxis básica de este lenguaje además de la manera de codificar los conceptos de la POO con este lenguaje. Por lo tanto, la guía de Java será un recurso que se utilizará en paralelo a los módulos teóricos.

Además, la asignatura cuenta con seis animaciones en vídeo (i.e. Audiovisual) que explican de manera resumida y breve conceptos clave de la programació orientada a objetos.

En cuanto a la organización de las actividades evaluables, la asignatura se divide en dos fases:

  • Fase 1 - Evaluación Continua: en la primera parte de la asignatura, el estudiante deberá realizar 4 Pruebas de Evaluación Continua (PEC) que deben ser entregadas como tarde en la fecha que se indica tanto en el enunciado, en el aula y en este Plan Docente. Las PECs sirven para controlar, tanto por parte del profesor docente colaborador como por el mismo estudiante, el progreso en la asignatura. La evaluación de estas 4 PECs dan como resultado la nota final de Evaluación Continua (EC). Para superar la asignatura es necesario que la nota final de EC sea igual o superior a 5
  • Fase 2 - Prácticas: una vez se han adquirido los conceptos de la asignatura gracias a la realización de las 4 PECs, el estudiante debe realizar 2 Prácticas que deben ser entregadas como tarde en la fecha que se indica tanto en el enunciado, en el aula y en este Plan Docente. Las Prácticas sirven para que el estudiante demuestre que ha adquirido los conocimientos  y competencias de la asignatura. Las 2 Prácticas son dos actividades que guían menos al estudiante en comparación con las PECs. La primera de las Prácticas consiste en dibujar el diagrama de clases UML que soluciona un problema dado. Por su parte, la segunda Práctica se centra en la codificación en Java del diagrama de clases UML realizado en la primera práctica. La evaluación de estas 2 Prácticas dan como resultado la nota final de Prácticas (Pr). Para superar la asignatura es necesario que la nota final de Pr sea igual o superior a 5

Para todas las actividades habrá dos sesiones síncronas de resolución de dudas: una por la mañana (10:00 - 11:30) y otra por la tarde (16:00 - 17:30).

Amunt

El proceso de evaluación se fundamenta en el trabajo personal de cada estudiante y presupone la autenticidad de la autoría y la originalidad de los ejercicios realizados.

La falta de autenticidad en la autoría o de originalidad de las pruebas de evaluación; la copia o el plagio; el intento fraudulento de obtener un resultado académico mejor; la colaboración, el encubrimiento o el favorecimiento de la copia, o la utilización de material o dispositivos no autorizados durante la evaluación, entre otras, son conductas irregulares que pueden tener consecuencias académicas y disciplinarias graves.

Por un lado, si se detecta alguna de estas conductas irregulares, puede comportar el suspenso (D/0) en las actividades evaluables que se definan en el plan docente - incluidas las pruebas finales - o en la calificación final de la asignatura, ya sea porque se han utilizado materiales o dispositivos no autorizados durante las pruebas, como redes sociales o buscadores de información en internet, porque se han copiado fragmentos de texto de una fuente externa (internet, apuntes, libros, artículos, trabajos o pruebas del resto de estudiantes, etc.) sin la correspondiente citación, o porque se ha practicado cualquier otra conducta irregular.

Por el otro, y de acuerdo con las normativas académicas, las conductas irregulares en la evaluación, además de comportar el suspenso de la asignatura, pueden dar lugar a la incoación de un procedimiento disciplinario y a la aplicación, si procede, de la sanción que corresponda.

La UOC se reserva la potestad de solicitar al estudiante que se identifique o que acredite la autoría de su trabajo a lo largo de todo el proceso de evaluación por los medios que establezca la universidad (síncronos o asíncronos). A estos efectos, la UOC puede exigir al estudiante el uso de un micrófono, una cámara u otras herramientas durante la evaluación y que este se asegure de que funcionan correctamente.

La verificación de los conocimientos para garantizar la autoría de la prueba no implicará en ningún caso una segunda evaluación.

Amunt

Esta asignatura solo puede superarse a partir de la evaluación continua (EC), nota que se combina con una nota de prácticas (Pr) para obtener la nota final de la asignatura. No se prevé hacer ninguna prueba de evaluación final. La fórmula de acreditación de la asignatura es la siguiente: EC + Pr.


Ponderación de las calificaciones

Opción para superar la asignatura: EC + Pr

Nota final de asignatura = Final Continuada (FC) = EC+Pr

EC = 40%

Pr = 60%

Notas mínimas:

· Pr = 5

· EC = 5

En caso de no conseguir la nota mínima en la Pr, la nota obtenida en la fórmula corresponde a la obtenida en la Pr, o el que indique el modelo de evaluación.

Amunt

Como se ha comentado en el apartado de "Metodología", durante el semestre el estudiante realizará 4 PECs y 2 Prácticas.

Las fechas de publicación de enunciados y de entrega de las PECs y Prácticas se pueden encontrar en el apartado de 'Planificación' de este Plan Docente.

Es importante tener claro que el seguimiento correcto de la asignatura compromete al estudiante a realizar las actividades propuestas (PECs y Prácticas) de manera individual y según las indicaciones que pauta este Plan Docente. En caso de que no sea así, las actividades se evaluarán con una D (=0). En concreto, en caso de extrema similitud entre algún ejercicio de alguna actividad de dos o más estudiantes que desacredite el hecho de haberla realizado individualmente, la nota final de EC y/o Prácticas será un 0 para todos ellos.

Por otro lado, y siempre a criterio de los Estudios, el incumplimiento de este compromiso puede suponer que no se permita al estudiante superar ninguna otra asignatura mediante evaluación continuada ni en el semestre en curso ni en los siguientes.

En cuanto a las PECs, es importante que se tenga en cuenta que:

  • Para cada ejercicio se indicará cuál es el requisito mínimo que se debe cumplir para que sea evaluado por el equipo docente.
  • El hecho de superar todos los requisitos mínimos indicados con el enunciado de la PEC, garantiza una nota mínima de 5 en esa PEC.
  • Los otros 5 puntos de la PEC se obtendrán mediante la superación de requisitos más avanzados y/o tras una revisión realizada por el/la profesor/a colaborador/a docente (PDC) del aula. En esta revisión se evaluarán aspectos como: calidad de la solución, uso de buenas prácticas, estilo, superación de tests adicionales, etc. 
  • Un ejercicio que no satisface el requisito mínimo exigido en el enunciado tendrá un calificación de 0 puntos.
  • Para cada ejercicio de programación se proporcionará un conjunto de tests unitarios realizados con JUnit que el estudiante podrá "pasar" a su código las veces que desee. Gracias a estos test, el estudiante podrá verificar la funcionalidad mínima de su código.
  • Un ejercicio de programación que contenga errores que ni siquiera permitan la compilación y ejecución del programa, obtendrá una calificación igual a 0.
  • El estudiante pueden entregar una PEC tantas veces como desee, siempre que sea antes de la fecha límite indicada. Se le corregirá la última entrega.

En cuanto a las Prácticas, es importante que se tenga en cuenta que:

  • En la corrección de las Prácticas se evaluarán aspectos como: calidad de la solución, uso de buenas prácticas, estilo, argumentación de la solución propuesta, superación de test adicionales, etc. 
  • Una Práctica que contenga errores que ni siquiera permitan la compilación y ejecución del programa, obtendrá una calificación igual a 0.
  • El estudiante puede entregar una Práctica tantas veces como desee, siempre que sea antes de la fecha límite indicada. Se le corregirá la última entrega.
  • El estudiante no puede convalidar la nota final de Prácticas (Pr) de ningún semestre anterior. Por lo tanto, todos los estudiantes, ya sean repetidores o nuevos en la asignatura, tienen que hacer las Prácticas del semestre en curso.

Amunt

La nota de EC se calcula de la siguiente manera:

EC = 10% PEC1 + 20% PEC2 + 30% PEC3 + 40% PEC4

Para obtener una nota diferente a No Presentado (N), el estudiante debe entregar 2 de las 4 PECs. Las PECs no entregadas se contabilizarán con una nota igual a 0 (cero).

Respecto a la nota de Prácticas, ésta se calcula de la siguiente manera:

Pr = 30% PRAC1 + 70% PRAC2

Para obtener una nota diferente a No Presentado (N), el estudiante debe entregar la Práctica 2. Si no se entrega la Práctica 1, ésta contabilizará con una nota igual a 0 (cero) en el momento de calcular la nota Pr.

La nota final de la asignatura se calcula con la siguiente fórmula siempre y cuando la nota de EC y Pr sean iguales o superiores a 5:

Nota asignatura = 40% EC + 60% Pr

A criterio del Equipo Docente, éste puede pedir a algunos estudiantes realizar una pequeña prueba online asíncrona con tal de validar la adquisición de las competencias y conocimientos de la asignatura. En tales casos, la realización de la prueba es obligatoria. La nota de dicha prueba será apto o no apto. Si no se realiza la prueba o se obtiene una calificació de no apto, entonces la nota final de Práctica será un 4.

Amunt

Para cada una de las actividades de evaluación del curso (PECs y Prácticas) se publicarán sus soluciones en el aula para que el estudiante haga la autoevaluación y reflexione sobre lo que ha hecho bien y/o mal. Igualmente, el estudiante puede solicitar a su profesor docente colaborador alguna explicación extra en aquellos ejercicios que crea conveniente.

Amunt