PROGRAMACIÓN ORIENTADA A OBJETOS - Curso 2005/2006

PROGRAMACIÓN ORIENTADA A OBJETOS - Curso 2006/2007
[Objetivos][Teoría][Prácticas][Evaluación][Bibliografía][Otros enlaces][Convocatoria examen]

Última modificación: 19 de septiembre de 2007

TITULACIÓN

014 - Ingeniero Técnico en Informática de Gestión 

015 - Ingeniero Técnico en Informática de Sistemas

140 - Ingeniero en Informática

CRÉDITOS 6 (3T+ 3P)  OBLIGATORIA
TEORÍA

ITIS - Aulario Norte, Aula B. 04:       Martes, 9:00 a 11:00

II    - Aulario Norte, Aula B. 02:       Miércoles, 10:00 a 12:00 

ITIG - Aulario Norte, Aula B.01:     Jueves, 9:00 a 11:00

PRÁCTICAS ITI Sistemas - Facultad de Informática, Laboratorio 1.3: 
  • Martes       18:30 a 20:30     

  • Miércoles  18:30 a 20:30      

Profesores responsables: Begoña Moros

ITI Gestión - Facultad de Informática, Laboratorio 1.4: 

  • Lunes        16:30 a 18:30

  • Miércoles  16:30 a 18:30

Profesores responsables:  Jesús Sánchez y Marcos Menárguez

Ingeniero en Informática - Facultad de Informática, Laboratorio 1.3:

  • Martes      16:30 a 18:30

  • Miércoles 16:30 a 18:30

Profesores responsables: Marcos Menárguez

 

Capacidad 20 grupos por sesión.

TUTORÍAS
  • Begoña Moros (despacho 2.37):
    • Lunes:         10:00 - 13:00
    • Martes:        10:00 - 13:00
  • Marcos Menárguez (despacho 2.33, marcos@um.es):
    • Martes:        10:00 - 13:00
    • Miércoles:   10:00 - 13:00
  • Jesús Sánchez (despacho 2.32, jesusc@um.es):
    • Martes:         11:00 - 14:00  

OBJETIVOS.

Esta asignatura introduce al alumno en el paradigma de programación orientado a objetos, OO. Los objetivos de la enseñanza teórica son:

La asignatura está basada en la visión del método OO ofrecida por B. Meyer en el libro "Construcción de Software Orientado a Objetos", 2ª edición, contrastada en todo momento con el uso de los conceptos que se planteen en varios lenguajes de programación (C++ y Java).

Como trabajo práctico el alumno deberá desarrollar una pequeña aplicación, con el objeto de adquirir destreza en el manejo de un lenguaje OO y de su entorno. Se utilizará Java como lenguaje de implementación.

Por tanto, la asignatura proporciona al alumno conocimientos suficientes para abordar el estudio de cualquier lenguaje OO, metodología de análisis y diseño OO, de los sistemas gestores de bases de datos OO, y en general de cualquier materia basada en el modelo orientado a objetos.

PROGRAMA TEÓRICO  

                           - ejercicios propuestos tema1

 

            Bibliografía:

                            *Capítulos 1,3,4,5,6 de [Meyer, 99]

             - ejercicios propuestos tema2

 

Bibliografía:

     *Capítulos 7, 8, 13.2 y 23.4  de [Meyer, 99]

 

Bibliografía complementaria:

 

      * Bracha, G. "Generics in the Java Programming Language". 2004.

      * Venners, B. y Eckel, B. "Generics in C#, Java and C++". A conversation with Anders Hejls, Part VII. 2004.

                           - ejercicios propuestos tema3

            Bibliografía:

                            *Capítulos 11, 12 y 23.6 de [Meyer, 99]

            

         Bibliografía complementaria:

 

                   *"Building bug-free OO software: An introduction to Design by Contract"                

                    *  Eckel, B. "Thinking in Java. 3rd edition. Revision 2.0". Ver la sección "Using Assertions for Design by Contract" en el capítulo 15.

                    *  Pal, G.  and  Bansal, S. "Exceptions in Java: Nothing exceptional about them". JavaWorld. August 2000.

                    *  Rogers, P.. "J2SE 1.4 premieres Java's assertion capabilities". JavaWorld. November 2001.

                    *  Sintes, T.. "Exceptions: Don't get thrown for a loss. Catch the differences between checked and runtime exceptions". JavaWorld. February 2002.

                   *  Sun. "Runtime Exceptions--The Controversy". The Java Tutorial.

                   *  Venners, B.. "Designing with exceptions. Guidelines and tips on when and how to use exceptions". JavaWorld. July 1998.

      

                          - ejercicios propuestos tema4

 

            Bibliografía:

                         *Capítulos 14 , 16 (1,4,5,8), 17 (1,.2)  y  24.(6,9)  de [Meyer, 99]

 

                            - ejercicios propuestos tema5

            Bibliografía:

                         *Capítulo 15  de [Meyer, 99]

 

PRÁCTICAS

      [TEORÍA][EJERCICIOS][EJEMPLO][SOFTWARE][LIBROS][NOTAS]

  Begoña Moros Marcos Menárguez Jesús Sánchez
ITI Sistemas Grupo1 y 2 --- ---
ITI Gestión --- Grupo1

Grupo2b

Grupo2a
Ingeniero en Informática ---- Grupo1

Grupo2

---

** TEORIA Y EJERCICIOS DEL SEMINARIO DE JAVA**

** Instrucciones para dejar los proyectos en SUMA **

1- Entrar en la asignatura en la sección de Contenidos

2- Vuestro disco está en  "Administrar mis contenidos"

3- Para subir el proyecto debéis comprimir la carpeta del proyecto ECLIPSE  (zip) y subir este fichero. Una vez en SUMA lo descomprimís y borráis el zip.

 

Contenido Ejercicios propuestos Fecha de entrega Modo de entrega
Seminario 0: Primer programa en Java. El entorno Eclipse.

----

---- ----
Seminario 1: Clases y Objetos ----

----

----

Entrega1 (MODIFICADO!!)

Contexto de las entregas:

 1er enunciado general

ITIS - 30 octubre

I.I.    - 8 de noviembre

ITIG - 9 de noviembre

SUMA

Seminario 2: Herencia. Clases abstractas.

 

                    Clase Object. Genericidad

Entrega2 Se anunciará en SUMA con la debida antelación

SUMA

Entrega3

SUMA y papel TODO lo que lleváis hecho hasta este momento

Seminario 3: Interfaces  
Seminario 4:  Colecciones e iteradores

Enunciado-Entrega4FINAL

Implementación de la vista

Documentación de la vista

imágenes

¿cómo añadir un .jar al proyecto?

18 de enero de 2007 SUMA y papel
Seminario 5: Manejo de cadenas y Entrada/Salida

ENUNCIADOS DE PRÁCTICAS PARA LAS CONVOCATORIAS DE JUNIO Y SEPTIEMBRE

Ya están disponibles en SUMA    11 de junio

    7 de septiembre

 

 

Formato de entrega de las prácticas en papel:

    - Una portada con los miembros del grupo de prácticas,  la titulación y el profesor.

    - El código fuente de todas las clases implementadas hasta el momento.

    - El código impreso no debe encuadernarse, simplemente meterlo en una funda de plástico

    - El trabajo debéis dejarlo en Conserjería.

Referencias: [Eckel98] [Deitel98] [Arnold01]

** EJEMPLO DE APLICACIÓN **

- Aplicación de gestión de una AGENDA DE TELÉFONOS.

** SOFTWARE JAVA** 

 

** TUTORIALES AYUDA **

Criterios de evaluación.

Examen final teórico-práctico (60%) y realización de la práctica (40%) que deben aprobarse (nota >= 5) por separado.

Fecha de entrega y evaluación de las prácticas.(Notificado en SUMA el 10/01/2007)

NOTA: A partir de 4'5 en el examen se hará media con la nota de prácticas SIEMPRE Y CUANDO se hayan entregado, es decir, NO se guarda el 4'5.

La nota de teoría o prácticas aprobadas sólo se guardarán UN AÑO.

Enunciado del examen de Febrero de 2007, examen de Septiembre de 2007 y exámenes de convocatorias anteriores.

NOTAS DEL EXAMEN DE SEPTIEMBRE:

    - Presentados al examen

    - Las revisiones tendrán lugar los días:

            ** Viernes 14 de septiembre de 9:30-14:00

            ** Lunes 17 de septiembre de 9:30-14:00 y de 16:30 a 19:30

    - A partir del 4'5 hace media con las prácticas si se han entregado en esta convocatoria o en alguna anterior. Si no se han entregado las prácticas una nota menor que 5 es un suspenso.

 

NOTAS DE LAS ACTAS DE SEPTIEMBRE. INCLUYE LAS NOTAS DE TEORÍA y PRÁCTICA HASTA LA FECHA:

    ITI Gestión

    ITI Sistemas

    Ingeniero en Informática

 

    NOTA MUY IMPORTANTE:

    - Aquellos alumnos que se matricularon por primera vez en el curso 2006/2007 se les guarda la nota que tengan aprobada (teoría o prácticas) un año a contar desde que superaron esa parte.

    - Los alumnos anteriores al curso 2006/2007 y que en su día aprobaron alguna de las dos partes de la asignatura, le cuenta como si la hubieran aprobado en febrero de 2007. Por tanto, se les guarda la parte aprobada hasta febrero de 2008.

  

Bibliografía básica :

Arnold K., Gosling J., Holmes D. El lenguaje de programación Java. Addison Wesley. 2001.

Budd, T. Object Oriented Programming. Third edition. Addison Wesley. 2002.

Eckel B., Thinking in Java. 3nd edition. Prentice Hall, 2002. (http://www.mindview.net/Books/TIJ/)

Eckel B., Piensa en Java.. Prentice Hall, 2000.
  González Seco, Jose Antonio. El lenguaje de programación C#. http://www.josanguapo.com
Cay S. Horstmann, Gary Cornell. Java 2. Vol I. Fundamentos. Pearson/Prentice Hall, 2006.
Cay S. Horstmann, Gary Cornell. Java 2. Vol II. Características Avanzadas. Pearson/Prentice Hall, 2006.

Meyer, B., Construcción de software orientado a objetos, 2nd edición, Prentice-Hall, 1999.

 Stroustrup, B., El Lenguaje de Programación C++. Edición especial. Addison Wesley. 2003.

 

Complementaria:

Otros enlaces

** ORIENTACIÓN A OBJETOS **

** LPOO **

Convocatoria de examen

Fecha:13 de febrero de 2007

Turno: tarde (16:30)

Aulas: A.01, A.02, A.03, B.03 y B.04

 

Fecha: 29 de junio de 2007

Turno: tarde (16:30)

Aulas: A.03

Fecha: 7 de septiembre de 2007

Turno: mañana (9:30)

Aulas: B.01 y B.02 (Aulario Norte)