Programación Orientada a Objetos Programación Orientada a Objetos (periodo sin docencia) Datos Generales de la Asignatura Departamento de Lenguajes y Sistemas Informáticos E.T.S.I. Informática y de Telecomunicaciones Curso Académico: periodo sin docencia Titulación: Ingeniería en Informática Créditos teóricos: 6 Créditos prácticos: 3 Curso: 3º Profesorado Nuria Medina Medina María del Mar Abad Grau Régimen de tutorías http://lsi.ugr.es/lsi/nmedina http://lsi.ugr.es/lsi/mabad OBJETIVOS El principal objetivo de la asignatura es que los alumnos comprendan el paradigma orientado a objetos y sean capaces de aplicarlo independientemente de la sintaxis concreta de cada lenguaje de programación. De forma más detallada los objetivos son: - Entender el concepto de clase como unidad de programación y el de objeto como unidad de ejecución. Conocer las ventajas del polimorfismo y la ligadura dinámica y ser capaz de aplicarlas. Comprender el mecanismo de la herencia y los beneficios que éste proporciona a nivel de diseño e implementación. Entender el concepto de interfaz en Java y como su uso mejora el diseño y la reutilización del software. Conocer las diferencias ente un lenguaje orientado a objetos puro y un lenguaje orientado a objetos mixto. Aprender la sintaxis de los lenguajes de programación Smalltalk y Java. Ser consciente de que aplicar patrones de diseño puede mejorar la calidad del software desarrollado. -1- Programación Orientada a Objetos MATERIAL Material de teoría, material adicional y el guión de prácticas puede ser encontrado en la página web de la asignatura: http://lsi.ugr.es/~pdo Además, es interesante consultar la siguiente bibliografía: - - Budd, T. (1994) Introducción a la programación orientada a objetos. Addison-Wesley Iberoamericana. Arnold, K. et al. (2001) El lenguaje de programación JAVA. Addison-Wesley. Goldberg, A. and Robson, D. (1989) Smalltalk-80. The languaje. Addison-Wesley. Froufe (1999) Java 2: manual de usuario y tutorial. Ra-Ma. Duran, F. et al. (2007) Programación orientada a objetos con JAVA. Thomson. Lewis, S. (1995) The Art and Science of Smalltak. Prentice-Hall. Chamond Liu. (1996) Smalltalk Objects and Design. Manning Publications. Ingalls, D. (1981) Design Principles Behind Smalltalk. Learning Research Group Xerox Palo Alto Research Center BYTE Magazine. Goldberg, A. (1983) Smalltalk-80: The Interactive Programming Environment (Addison-Wesley series in computer science. Krasner, G. (1983) Smalltalk-80: Bits of History, Words of Advice (AddisonWesley series in computer science. Taivalsaari, A. (1996) Classes vs. Prototypes - Some Philosophical and Historical Observations. Journal of Object-Oriented Programming. Goldberd, A. (1983) Smalltalk-80: The Language and its Implementation. Gamma, E.; Helm, R.; Johnson, R. and Vlissides, J. (The Gang of Four Design Patterns) (1994) Elements of Reusable Object-Oriented Software. Software Development. Alpert, S.; Brown, K. and Woolf, B. (1998) The Design Patterns Smalltalk Companion Export Find Similar. The Design Patterns Smalltalk Companion. Web con más libros: http://stephane.ducasse.free.fr/FreeBooks.html TEMARIO • • • • • Tema 1 – Concepto de Programación y Diseño Dirigido a Objetos – Conceptos Básicos de los Lenguajes Dirigidos a Objetos Tema 2 – Objetos y Mensajes – Objetos y Mensajes en Smalltalk – Objetos y Mensajes en Java Tema 3 – Clasificación de los Objetos – Clases en Smalltalk – Clases en Java Tema 4 – Polimorfismo – TAD y clases Tema 5 – Concepto de herencia – Herencia en Smalltalk -2- Programación Orientada a Objetos – Herencia en Java EVALUACIÓN GLOBAL Para superar la asignatura será imprescindible superar por separado teoría y prácticas. En la calificación definitiva intervendrán: - Teoría: 60% Prácticas: 40% EVALUACIÓN DE TEORÍA Se realizará un examen al final sobre todo el material mencionado arriba. El examen contendrá cuestiones breves, cuestiones tipo test y ejercicios. La nota máxima del examen será de 10 puntos. PRÁCTICAS Y EVALUACIÓN DE LAS PRÁCTICAS Las prácticas de la asignatura se realizarán individualmente utilizando los lenguajes dirigidos a objetos Smalltalk y Java. Cada una de las prácticas se acompaña de un cuestionario orientativo para guiar su realización. La nota máxima de las prácticas será de 10 puntos. Para aprobar las prácticas es imprescindible: 1. Realizar todas y cada una de las prácticas. 3. Entregar y defender las prácticas el día del examen final. En la calificación de las prácticas se tendrán en cuenta los siguientes criterios: 1. Cada práctica tiene un peso en la calificación. Por bajo que sea este peso, se exigirá la presentación de TODAS las prácticas para aprobarlas. 2. Para APROBAR una práctica se exigirá que funcione correctamente. 3. La nota de cada práctica dependerá de su calidad. -3-