Tabla de contenidos
Esta asignatura tiene como objetivo fundamental profundizar en el estudio del lenguaje Java y de su uso para la programación de pequeños sistemas.
Una vez estudiados los principios de un lenguaje de programación como Java, sobre todo desde el punto de vista imperativo en el primer cuatrimestre, en este segundo se trata en primer lugar de profundizar en los aspectos de orientación a objetos, entre ellos los conceptos de herencia e interfaz. También se estudiarán los fundamentos de interfaces gráficas, el concepto de recursión y la clasificación de programas en base a su complejidad.
En la segunda mitad de la asignatura, se estudiarán estructuras de datos sencillas. Con frecuencia, al programar aplicaciones uno se encuentra con colecciones de datos a las que accede de una misma forma. Es por tanto útil estudiar esas estructuras de datos de una forma abstracta y general, con independencia de la naturaleza de los datos concretos que forman parte de ella. Dada la extensión de esta asignatura sólo se podrán estudiar las estructuras más sencillas, como pilas, colas y árboles.
La asignatura se estructura en torno a 1 unidad de repaso y 5 unidades temáticas:
Para cada una de estas unidades se establecen objetivos de aprendizaje muy claros. Éstos se encuentran enumerados en el material correspondiente a cada unidad. Los objetivos de aprendizaje sirven de referencia al estudiante, pues representan metas parciales que ha de conseguir. Las evaluaciones también se basan en estos objetivos de aprendizaje. Por ello, se recomienda tomarse estos objetivos de aprendizaje muy en serio.
Los objetivos de aprendizaje se han clasificado según la taxonomía de Bloom. Benjamin Bloom fue un educador que definió 6 niveles de aprendizaje en el dominio cognitivo:
Los niveles más bajos en esta escala son los más básicos y un prerrequisito para los niveles superiores. Por ello se consideran más necesarios de cubrir y tendrán mayor importancia en la evaluación.
Además de los objetivos de aprendizaje temáticos, en la asignatura se persiguen otros objetivos de índole transversal. Éstos se resumen a continuación:
Trabajar con documentación técnica
Trabajar en grupo
Sopesar alternativas de programación
Corregir errores en el código
Utilizar herramientas de información y comunicación
La metodología docente de esta asignatura está basada en la integración activa del estudiante en la actividad docente y en la aplicación de los principios de la evaluación continua.
La asignatura está dividida en unidades, y cada unidad consiste en sesiones magistrales en aula grande y sesiones de prácticas en grupo pequeño. Toda la información y material necesarios para seguir las unidades están disponibles en la página web de la asignatura. En las clases magistrales, el alumno tiene el material (transparencias, etc.) disponible con antelación, y se valorará positivamente la participación del alumno en las actividades en el aula (preguntas, minitests, resolución de problemas en grupos, etc). Asimismo, el alumno también tiene disponible con antelación los enunciados de los ejercicios o programas a resolver durante las clases de prácticas, que se realizarán en parejas. Adicionalmente a las clases presenciales, tanto magistrales como de prácticas, se propone al alumno una serie de actividades para realizar en casa. La asignatura incluye tabién la realización de un proyecto de programación parte del cual se realizará dentro durante algunas de las sesiones de grupo pequeño.
Para más información consultar: Ficha Reina
Los principales textos de referencia son los dos indicados a continuación. En el material de las sucesivas unidades temáticas se hace referencia explícita a los capítulos concretos de relevancia.
Data Structures and Problem Solving Using Java de Mark A. Weiss (3ª edición)
Data Structures and Algorithms in Java de Michael T. Goodrich y Roberto Tamassia (4ª edición)
Recomendamos a los estudiantes programar con un estilo que siga las convenciones habituales del lenguaje Java. El documento Directrices de Programación para Java presenta de forma breve las convenciones más importantes así como instrucciones para configurar Eclipse conforme a las mismas.
La evaluación de la asignatura se basa en el principio de la evaluación continua. Además de la participación en clase y los proyectos de programación, se realizarán dos exámenes parciales escritos (tipo test) y un examen de laboratorio a lo largo de la asignatura.
La distribución de la nota será la siguiente:
70%: evaluación continua
30%: examen final, compuesto por una parte de teoría (15%) y una parte de problemas (15%).
Importante: Todos los pesos especificados en estos criterios de evaluación son porcentajes respecto de la nota final.
Peso |
Parte |
Peso en la calificación global |
|
---|---|---|---|
70% |
Evaluación continua |
Participación en clase |
5% |
1er. examen parcial |
15% |
||
2º examen parcial |
20% |
||
Proyecto (código + examen laboratorio) |
30% |
||
30% |
Examen final |
Teoría |
15% |
Problemas |
15% |
La evaluación del proyecto se basará en las calificaciones de:
Para aprobar la asignatura mediante el sistema de evaluación continua es imprescindible tener una nota mínima de 3,5 puntos sobre 10 en el examen final.
Para los alumnos que no sean capaces de resolver ninguno de los apartados del examen de prácticas, la calificación total del proyecto será 0. Para el resto de alumnos, los 30 puntos del proyecto consistirán en: examen de prácticas, 15 puntos; entrega de código fuente 15 puntos.
En cualquier caso, tiene aplicación la normativa de evaluación para estudios de grado aprobada en Consejo de Gobierno de 31 de Mayo de 2011.
Durante el proceso de evaluación se espera de todos los estudiantes unas pautas de conducta acordes con los valores éticos de esta universidad reflejados en tu compromiso con la universidad y la guía de buenas prácticas.
En particular se espera que el estudiante cumpla las normas de evaluación del rendimiento y rechace comportamientos fraudulentos, como copiar por cualquier medio en las pruebas de evaluación o plagiar trabajos o prácticas. Así mismo el estudiante es responsable de custodiar sus pruebas de evaluación para evitar este comportamiento fraudulento por parte de otros compañeros.
Todo comportamiento que incumpla alguna de estas pautas será sancionado y puesto en conocimiento de los órganos competentes, con el fin de que estos procedan a adoptar las medidas pertinentes de acuerdo a la normativa vigente. En los casos en que quede acreditado que un estudiante ha incurrido en una situación de defraudación que impida el ejercicio, por parte de los profesores, de la potestad de verificación de los conocimientos, se hará constar en las actas la calificación de suspenso (0)
A continuación se indican todos los profesores que intervienen en las asignaturas, sus datos de contacto y sus horas de consulta. Los profesores estarán en su despacho en dicho horario para atender tutorías.
Función | Nombre | Despacho | Teléfono | Horas de consulta | |
---|---|---|---|---|---|
Coordinadora de Programación de Sistemas en todas las titulaciones. Responsable de los grupos 66, 67 y 68. Profesora de teoría y prácticas en los grupos 66, 67 y 68. | Mª Carmen Fernández Panadero | 4.1F06 | 91-624-8744 | mcfp@it.uc3m.es | Mar 08:30-11:00; Jue 16:00-17:30 |
Responsable de los grupos 65,69,79 y 95. Profesora de teoría y práctica en los grupos 65, 69, 79 y 95. | Raquel M. Crespo García | 4.1F17 | 91-624-5940 | rcrespo@it.uc3m.es | Jue 11:00-13:00 |
Responsable de los grupos 61 y 62 Profesor de teoría en los grupos 61 y 62. Profesor de prácticas en los grupos 61,62 y 71. | José Jesús García Rueda | 4.0F02 | 91-624-6232 | rueda@it.uc3m.es | Jue 11:00-14:00 |
Profesor de teoría en los grupos 71 y 72. Responsable de teoría y profesor de prácticas grupo 71. | Jesús Arias Fisteus | 4.1F17 | 91-624-5940 | jaf@it.uc3m.es | Mie 11:00-13:00; Mie 16:00-18:00 |
Profesor de teoría en los grupos 91-92-93. | Vicente Luque Centeno | 4.1C04 | 91-624-5972 | vlc@it.uc3m.es | Mar 14:15-16:15; Mar 17:45-19:45 |
Profesor de prácticas en el grupo 65-69-79. | Julio Villena Román | 4.1F17 | 91-624-5940 | jvillena@it.uc3m.es | Jue 12:00-14:00; Jue 16:00-18:00 |
Profesor de prácticas en los grupos 95 y 67. | Alberto Cortés Martín | 4.0F06 | 91-624-6234 | alcortes@it.uc3m.es | Jue 11:00-13:00 |
Profesor de prácticas en el grupo 72 | Carlos Alario Hoyos | 4.0.F03 | 91-624-6237 | calario@it.uc3m.es | Lun. 16:00-18:00 |
Profesor de prácticas en el grupo 91. | Jesús Manuel Moreno Garrido | 4.0.F07 | 91-624-8387 | jmmgarri@it.uc3m.es | Mie. 19:30-21:00 |
Profesor de prácticas en el grupo 92. | Francisco Javier Sedano Jarillo | 4.0F07 | 91-624-8387 | fsedano@it.uc3m.es | Jue 19:30-21:00 |
Profesor de prácticas en el grupo 93. | Jose María Rubio Manso | 4.1F17 | 91-624-5940 | jrubio@it.uc3m.es | Mie 19:30-21:00 |
La planificación de clases de los distintos grupos está disponible en los siguientes enlaces: