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 materiales que dispone la asignatura   Materiales y herramientas de apoyo   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  
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.

Esta asignatura es el punto de entrada al paradigma de la orientación a objetos. Una vez en Fundamentos de programación se ha introducido el paradigma clásico o procedimental, que es la introducción a las técnicas de programación, ahora se estudiará un nuevo tipo de programación que incluye técnicas más avanzadas. Concretamente, en este curso se verá qué es la orientación a objetos, la importancia que tiene actualmente en la industria del software y la influencia que ha ejercido sobre muchas tecnologías informáticas. Un concepto sobre el cual se pondrá un énfasis especial es la reutilización. La reutilización, como veremos, nos permite desarrollar un nuevo sistema aprovechando partes realizadas anteriormente. Durante el curso presentaremos los motivos por los cuales la orientación a objetos permite un alto nivel de reutilización y, al mismo tiempo, qué esfuerzo suplementario requiere su uso.

Para consolidar los conocimientos teóricos se utilizará el lenguaje Java, tanto en los ejemplos como en los ejercicios de la asignatura.

Enfoque conceptual

La asignatura tiene como objetivo fundamental la comprensión de los conceptos generales del Paradigma de la Orientación a Objetos, y la adquisición de los conocimientos necesarios para el desarrollo de aplicaciones con Lenguajes de Programación Orientados a Objetos. Por ello, el enfoque parte del modelado - que se apoya en la notación gráfica del Lenguaje de Modelado Unificado, UML-, para pasar de los modelos de objetos a su posterior implementación en un lenguaje de programación, en nuestro caso, Java.

Por tanto, la aproximación es aprender orientación a objetos primero, y después saber implementarlos en el lenguaje correspondiente, con sus características específicas.

El enfoque del curso es fundamentalmente práctico, orientado a la resolución de ejercicios y casos de estudio. Es importante destacar que la habilidad de modelar problemas sólo se puede adquirir mediante la resolución de casos y el estudio de casos ya resueltos, debido a que el modelado Orientado a Objetos es una tarea de abstracción y conceptualización para la cual no existen fórmulas mecánicas.

Amunt

La asignatura está pensada como la extensión de la asignatura "Fundamentos de Programación", que cubre 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.

Otras asignaturas del Plan de Estudios requerirán los conocimientos de esta materia como punto de partida, en particular, la asignatura "Estructura de la Información" requiere un dominio de los conceptos fundamentales que describiremos en este Plan docente, y la asignatura "Informática Gráfica" presupone también conocimientos de orientación a objetos.

Hay que tener en cuenta que el enfoque de la Orientación 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.

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 que se reflejan en los contenidos de la asignatura "Fundamentos de Programación". Se considera así prerrequisito imprescindible haber adquirido los conocimientos de esa asignatura, y, por tanto, tener soltura en la formulación de algoritmos y en la programación estructurada.

También se require conocimientos básicos de UML, por lo que se recomienda haber cursado "Ingeniería del Software".

Específicamente, la segunda de las Pruebas de Evaluación Continua de esta asignatura requiere el desarrollo de pequeños programas en Java, utilizando las mínimas estructuras sintácticas del lenguaje, asimilables a las de lenguajes que permiten utilizar los principios de la programación estructurada como Pascal o C.

Amunt

Es recomendable haber cursado previamente las asignaturas de "Fundamentos de Programación" e "Ingeniería del Software" antes de matricularse de esta asignatura.

Amunt

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 UML.
  • Aprender a programar en Java los conceptos teóricos mencionados y desarrollar un trabajo práctico utilizando los conceptos de orientación a objetos y Java.

Amunt

La asignatura se compone de dos grandes bloques conceptuales, uno teórico y otro de carácter más práctico. En el bloque teórico se ofrecerán los conocimientos necesarios para entender qué es la orientación a objetos y cómo debe programarse en este paradigma.

 Estos conocimientos están estructurados en los módulos siguientes:

               1. Introducción
               2. Clases y objetos
               3. Abstracción y clasificación
               4. Estructuras de objetos
               5. Herencia y polimorfismo
               6. Un ejemplo práctico

or otra parte, el bloque práctico tratará sobre cómo hay que aplicar los conocimientos teóricos en un lenguaje orientado a objetos, que en nuestro caso será Java. Estos conocimientos prácticos se abordarán en el módulo 7de los apuntes:

                7. El lenguaje de programación Java

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 (módulos 1 a 8).

El plan docente tiene que servir como punto de referencia a partir del cual se podrá acceder a los materiales didácticos y planificar el estudio de la asignatura. 

Los materiales didácticos incluyen los contenidos de la parte teórica (módulos 1 a 7) y de la parte práctica de la asignatura (módulo 8). Con la ayuda de este plan docente, el estudiante deberá llevar a cabo un estudio en paralelo de los dos bloques. 

El software JDK es necesario para llevar a cabo la práctica de la asignatura. Una vez instalado en la máquina, proporciona el entorno para hacer programas en Java y para implementar la práctica de la asignatura. 

Junto con el envío habitual de la UOC recibiréis el CD de software libre, en el que encontraréis varias versiones del JDK, así como otro software relacionado con el Java y la asignatura. En el Laboratorio de Java, encontraréis una descripción del software relacionado con la asignatura y de dónde se encuentra este software en el CD de software libre. Es conveniente que os instaléis la versión 5.0 del JDK. 

Además del JDK, es recomendable que os acostumbréis a utilizar un entorno integrado como desarrollo (IDE), que os facilitará mucho el desarrollo, sobre todo cuando poco a poco vayáis abordando proyectos más voluminosos (como, por ejemplo, la práctica de la asignatura). En este sentido, en el CD de software libre encontraréis el IDE de código abierto Eclipse, y en apartado de Recursos del aula  encontraréis un tutorial que os explicará cómo ponerlo en funcionamiento.

No es obligatorio utilizar el Eclipse, ni tan siquiera es obligatorio utilizar ninguno. Con el JDK ya tenéis suficiente. Ahora bien, sí os recomendamos que, sobre todo de cara a la práctica, utilicéis un IDE. Y entre las distintas posibilidades que tenéis, el Eclipse nos parece una buena opción.  

Amunt

La bibliografía recomendada se encuentra indicada en los materiales didácticos y también se puede acceder a ella desde el enlace correspondiente de la Estantería Virtual.

Orientación de lecturas y actividades previas

Existen numerosos libros dedicados al Análisis y Diseño Orientado a Objetos que proporcionan una introducción general de los conceptos fundamentales de la orientación a objetos en sus primeros capítulos.

Ejemplos de lecturas recomendables para obtener una "primera impresión" de los temas a tratar podrían ser los siguientes:

  • Los capítulos 1 al 3 del libro Rumbaugh, J. y otros (1996), Modelado y diseño orientados a objetos. Madrid: Prentice-Hall.
  • La parte I "Conceptos" del libro Booch, G. (1996), Análisis y Diseño Orientado a Objetos con Aplicaciones. Madrid: Addison Wesley. Más en concreto, el Capítulo 2, "El Modelo de Objetos" proporciona un contexto histórico del nacimiento de la orientación a objetos y de cuatro principios muy importantes para la materia que tratamos: abstracción, encapsulación, modularidad y jerarquía.

Debemos hacer notar que las notaciones gráficas que utilizan estos libros han quedado obsoletas y han sido reemplazadas por una única notación, que es la del UML que utilizaremos en este curso (de hecho, UML es de algún modo "heredera" de las notaciones que aparecen en estos dos libros). Sin embargo, los conceptos son los mismos, y los ejemplos son perfectamente válidos y muy útiles.

Amunt

Los estudiantes tienen que estudiar los apuntes en papel y realizar una práctica individual de programación, que los alumnos encontrarán colgada en el calendario en la fecha establecida para ello.

Con respecto al estudio de los apuntes, conviene destacar que se realiza en paralelo al estudio de la parte teórica y de la parte práctica de la forma que se explica en el apartado de Temporización. Junto con este estudio de los apuntes, se considera fundamental la realización tanto de las actividades propuestas en los apuntes (ejercicios y autoevaluación) como de las que propondrán los consultores en el Tablón del profesor durante el curso. Se recomienda, sobre todo, no mirar la solución de ninguna actividad antes de haberla resuelto.

Aquellos estudiantes que se acojan a la evaluación continua tendrán unos ejercicios (PEC) que servirán para controlar, tanto por parte del profesor consultor como del mismo estudiante, el progreso en la asignatura. Estos ejercicios serán colgados en la pestaña de planificación del aula, en el mismo calendario.

Es importante destacar que la mayoría de estudiantes que se acogen a la evaluación continua y realizan las PEC de forma satisfactoria superan la asignatura, ya que es una buena forma de ir progresando en la misma. Por lo tanto, es muy recomendable intentarlo.

Para desarrollar la parte práctica de la asignatura tendréis a vuestro alcance un Laboratorio Virtual de Java accesible desde el Campus Virtual, atendido por un consultor de laboratorio que os ayudará a resolver cualquier duda que tengáis sobre la instalación del software y la programación en Java. Tened en cuenta, sin embargo, que el Laboratorio está pensado exclusivamente para dar apoyo en la parte de lenguaje Java de la asignatura, no la parte de teoría. La resolución de las dudas conceptuales sobre contenidos es un trabajo intrínseco del consultor de la asignatura.  

Amunt

La Normativa académica de la UOC dispone que el proceso de evaluación se fundamenta en el trabajo personal del estudiante y presupone la autenticidad de la autoría y la originalidad de los ejercicios realizados.

La falta de originalidad en la autoría o el mal uso de las condiciones en las que se hace la evaluación de la asignatura es una infracción que puede tener consecuencias académicas graves.

El estudiante será calificado con un suspenso (D/0) si se detecta falta de originalidad en la autoría de alguna actividad evaluable (práctica, prueba de evaluación continua (PEC) o final (PEF), o la que se defina en el plan docente), ya sea porque ha utilizado material o dispositivos no autorizados, ya sea porque ha copiado de forma textual de internet, o ha copiado de apuntes, de materiales, manuales o artículos (sin la citación correspondiente) o de otro estudiante, o por cualquier otra conducta irregular.

La calificación de suspenso (D/0) en la evaluación continua (EC) puede conllevar la obligación de hacer el examen presencial para superar la asignatura (si hay examen y si superarlo es suficiente para superar la asignatura según indique este plan docente).

Cuando esta mala conducta se produzca durante la realización de las pruebas de evaluación finales presenciales, el estudiante puede ser expulsado del aula, y el examinador hará constar todos los elementos y la información relativos al caso.

Además, esta conducta puede dar lugar a la incoación de un procedimiento disciplinario y la aplicación, si procede, de la sanción que corresponda.

La UOC habilitará los mecanismos que considere oportunos para velar por la calidad de sus titulaciones y garantizar la excelencia y la calidad de su modelo educativo.

Amunt

Esta asignatura se puede superar únicamente mediante la realización de un examen final (EX), cuya nota se combina con la nota final de prácticas (Pr). Si la nota final de la pràctica es distinta de N (no presentado), la nota de la asignatura será distinta de N(no presentado). La nota de evaluación continua (EC) complementa la nota combinada del examen final y la parte práctica. La fórmula de acreditación de la asignatura es la siguiente: (EX+Pr)+EC


Ponderación de las calificaciones


Opción para superar la asignatura: (EX + Pr) + EC

Final de examen (FE) = EX + Pr

EX = 40%

Pr = 60%

Notas mínimas:

· Pr = 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.


Nota final de asignatura: FE + EC

FE = 65%

EC = 35%

Notas mínimas:

· EX = 4

Esta fórmula de ponderación sólo se aplicará cuando la nota resultante mejore la obtenida en el EX. Cuando la nota obtenida en el EX sea inferior a 4 o la calificación resultante de la fórmula de ponderación no permita mejorar la nota obtenida en el EX, la calificación final de la asignatura será la nota obtenida en el EX.

En el caso de asignaturas con prácticas (Pr) que cruzan con el examen (EX), la fórmula de ponderación sólo se aplicará cuando la nota resultante mejore la obtenida en FE (FE=EX+Pr). Cuando la nota obtenida en el EX sea inferior a 4, la calificación resultante de la asignatura será la nota obtenida en el EX. Cuando la calificación resultante de la fórmula de ponderación no permita mejorar la nota obtenida en FE, la calificación final de la asignatura será la nota obtenida en FE.

Amunt

Propuesta de evaluación continua

 

La evaluación continuada (EC) se compone de 4 Pruebas de Evaluación Continuada (PEC), que se realizarán a lo largo del semestre. Estas PEC están numeradas como PEC1, PEC2, PEC3 y PEC4.

Para obtener una calificación final de EC es necesario entregar, como mínimo, el 50% de las PECs. En caso contrario, la calificación de la EC será No Presentado (NP).

De este modo:

  • Si se entrega una sola PEC, la calificación de la EC será de No Presentado (NP).
  • Si se entregan como mínimo dos PECs, la calificación de la EC será diferente de NP.

En caso que el estudiante siga la EC, la nota final de la EC será la mediana de las cuatro PECs, considerando que todas las PECs tienen el mismo peso dentro de la nota final y que una PEC no entregada se contabiliza como una D.

De este modo:

  • Si se entregan únicamente dos PECs, la calificación de EC será un suspenso (D).
  • Para poder aprobar la EC el estudiante tiene que entregar un mínimo de 3 PECs.

Además, en la nota final de la EC se valorará también la participación del estudiante en el foro de la aula.

No hay que notificar explícitamente el acogimiento a la evaluación continuada; únicamente hay que entregar las pruebas en los plazos establecidos. Si se cumple el número mínimo de entregas, automáticamente se considera que el estudiante se acoje a la evaluación continuada.

Las fechas de publicación de los enunciados y entregas de las PECs las podéis encontrar en el apartado 'Planificación'.

Práctica de la asignatura

El objetivo fundamental es conseguir un programa que funcione correctamente, si bien dentro de la evaluación de la práctica se tendrán en cuenta aspectos metodológicos. Con este fin, el enunciado de la práctica puede incluir cuestiones específicas en este sentido.

La práctica está dividida en dos partes: PRACTICA1 y PRACTICA2.

La nota final de prácticas se obtendrá siguiendo las siguientes indicaciones:

  • Si se entrega como mínimo una Práctica, la calificación final de prácticas será diferente de NP.
  • La nota final de prácticas es un promedio de las notas de las dos entregas.
  • Para poder aprobar las prácticas, es necesario obtener una nota igual o superior a C- en cada una de las entregas, y su promedio debe ser igual o superior a C+. Por ejemplo, si se obtiene una A de la Practica1 y una D de la Practica2, la nota final de prácticas será inferior a 5. Por otro lado, si se obtiene una C- de las dos entregas, la nota final de prácticas será inferior a 5 (suspenso).

Las implicaciones que tiene la práctica sobre la nota final se explican en el apartado Evaluación final de la asignatura.

 

CONVALIDACIÓN DE PRÁCTICAS: La nota de la práctica puede convalidarse por la nota de la práctica obtenida en el semestre anterior, en caso de que el estudiante repita la assignatura.

Las condiciones necesarias para poder convalidar la nota de la práctica son:

  1. Sólo se puede convalidar la nota del semestre anterior (no se guardaran notas de más de un semestre de antigüedad).
  2. La nota global de la práctica debe ser igual o superior a 8. No se convalidaran notas parciales (por ejemplo, si se tiene una B de la PR1 y una D de la PR2, no se puede convalidar nada).

IMPORTANTE: El procedimiento de revisión de las notas de la práctica es diferente al de los exámenes presenciales. La revisión de la práctica se tiene que pedir mediante correo electrónico al propio consultor dentro del plazo establecido.

Amunt

Modelo de evaluación

El modelo de la asignatura es (EX + Pr) + AC

La asignatura se puede superar a partir de la evaluación continua (EC), la práctica (Pr) y el examen (EX).

Para obtener la nota final de la asignatura se deben seguir dos pasos:

1r. paso:

Nota Asignatura = NA = 0,4 * (Nota del examen) + 0,6 * (Nota de la práctica). Sólo se hará ésta cálculo si la nota del examen es igual o superior a 4 y la nota de la práctica es igual o superior a 5. Si la nota de la práctica es inferior a 5 o la nota del examen es inferior a 4, la asignatura estará suspendida.

Si el resultado anterior es igual o superior a 4 de debe hacer el segundo paso.

2º. paso:

 Nota final Asignatura (NFA) = 0,65 * (Nota NA) + 0,35 * (Nota de EC)

Éste caso sólo se aplicará cuando la nota de EC mejore la note del examen y práctica (NA), en caso contrario la nota final NFA = NA. O sea, la EC sólo puede mejorar o dejar intacta la nota obtenida en el examen y la práctica (NA).

Amunt