Programació II
Pre-requisitos
Esta asignatura es una continuación de Fundamentos de Programación. Por lo tanto, hay que haber aprobado "Fundamentos de Programación" para poder seguir "Programación". Para
cualquiera duda, por favor, ponerse en contacto conmigo.
Objetivos y Competencias
El objetivo de esta asignatura es reforzar los conocimientos de programación procedural adquiridos en la asignatura anterior y introducir los estudiantes a la Programación Orientada a
Objetos (OO) así como a conceptos más avanzados de estructuras de datos y algorítmica. Se utilizará como en la asignatura anterior el lenguaje de programación Java. Al final de esta
asignatura, los estudiantes:
Habrán adquirido conocimientos generales sobre los lenguajes de programación procedurales y OO que podrán usar en el futuro para aprender nuevos lenguajes.
Tendrán la habilidad de usar algunas de las librerías estándares esenciales de Java y sabrán como buscar e utilizar nuevas librerías cuando los necesitarán.
Entenderán y sabrán manipular estructuras de datos y procedimientos algorítmicos más complejos.
Contenidos
Conceptos de programación orientada a objetos (clases, objetos, herencia, overriding, etc)
Introducción a la API de Java y a algunas de sus librerías estándares
Manipulación de flujos de entrada y salida (streams)
Representación de datos más complejos (arrays estáticos y dinámicos, hashtables)
Metodología
Esta asignatura tiene un enfoque practico. Cada semana, trabajaremos sobre una misma practica que ira progresando de forma incremental, integrando los nuevos conceptos enseñados. La
practica tendrá como objetivo el procesamiento de textos en Catalán etiquetados.
Evaluación
Practicas: 50%
Auto-evaluación: 10%
Examen: 40%
Cada practica semanal cuenta en la evaluación global de las practicas. Las practicas se tienen que entregar a tiempo por correo electrónico y se restará medio punto por cada dia de retraso.
Las practicas se pueden hacer individualemente o en grupo de dos (no más). En ambos casos, se trata de un esfuerzo personal. El código tiene que estar comentado. En caso de plagio, se
considerará la practica como nula.
Los estudiantes tendrán que realizar un test cada dos semanas y mandarme por correo un informe de su auto-evaluación (el test viene con sus respuestas).
El examen final tiene como objetivo comprobar el esfuerzo individual de cada estudiante a lo largo de la asignatura. Para aprobar, hay que superar por separado el examen y las practicas.
Bibliografía recomendada
No hay un libro en particular que seguimos durante esta clase, pero podemos recomandar los siguientes libros:
Bradley Kjell, Introduction to computer science using Java:
http://chortle.ccsu.edu/cs151/cs151java.html
Eck, D.J. Introduction to programming using Java: http://math.hws.edu/javanotes/
Joyanes Aguilar, L. y Zahonero Martínez, I. Programación en Java 2: Algoritmos, Estructuras de Datos y Programación Orientada Objetos. Mc Graw Hill. 2002.
Deitel, P.J. and Deitel, H. M. Java How to Program. Prentice Hall, 1999.
Eckel, Bruce. Thinking in Java. Prentice Hall. 1998. Versión Web:
http://www.mindview.net/Books/TIJ/