Titulación | Tipo | Curso | Semestre |
---|---|---|---|
2500149 Matemáticas | OT | 4 | 1 |
Conviene haber aprendido los conocimientos en programación básica en C en los primeros cursos del Grado o en otras asignaturas, aunque no es imprescindible.
La asignatura tiene dos partes bien diferenciadas. Un primer objetivo es conseguir un buen dominio de programación en C, de manera que los alumnos sean el capaces de estructurar una aplicación y de programar un algoritmo complejo. Un segundo objetivo es conseguir una formación en programación orientada a objetos (con Java), creación de librerías y que sirva de base para el aprendizaje de cualquier lenguage orientado a objetos.
Las Prácticas se basan en hacer dos juegos: uno en C y el otro en Java.
El desarrollo de juegos como base de las prácticas de la asignatura proporciona la obligatoriedad de utilizar muchos aspectos diferentes de los lenguajes de programación y hace que las prácticas sean más atractivas para el alumno. Todo esto motiva para que el alumno esté más interesado por el desarrollo de la asignatura.
Primera parte.
1. Recordatorio de programación estructurada y modular aplicada al C. | |||
1.1. Recordatorio básico | |||
1.1.1. Estructuras y tipos de datos 1.1.2. Estructuras de secuencia, control e iteración 1.1.3. Procedimientos y funciones |
|||
1.2. Estructuras dinámicas | |||
1.2.1 Organización de punteros y direcciones de memoria 1.2.2. Estructuras básicas: pilas, listas y colas. 1.2.3. Árboles 1.2.4. Matrices dinámicas |
|||
2. Recursividad. | |||
2.1. Fundamentos de la recursividad 2.2. Algoritmos de búsquedade soluciones mediante árboles: |
|||
2.2.1. Amplitud prioritaria y profundidad prioritaria. 2.2.2. Backtraking. |
Segunda parte
3.Programación orientada a objetos | ||
3.1. Conceptos generales y características. 3.2. Clases y objetos 3.3. Análisis y diseño orientado a objetos. |
||
4. Java | ||
4.1. Características del lenguage. 4.2 Clases, bucles, funciones y estructuras del lenguage |
5. Python en Programación Orientada a Objetos
*A menos que las restricciones impuestas por las autoridades sanitarias obliguen a una priorización o reducción de estos contenidos.
Clases teóricas, de problemas y prácticas:
Se presentarán los conceptos de la asignatura. Se hará énfasis en la interpretación de los resultados y en la relación entre estos conceptos y sus aplicaciones. Se presentarán ejemplos que permitan a los alumnos abordar de forma autónoma la resolución de problemas.
Se discutirá la resolución de los problemas propuestos.
La base de la asignatura será absolutamente práctica. Esto implica que las clases se hacen totalmente en ordenador. Los conceptos teóricos serán explicados en cada sesión y serán complementados con ejercicios propuestos por el profesor, que se deberán programar directamente en el ordenador bajo su supervisión.
Tutorías:
El profesor supervisará y evaluará el trabajo de los estudiantes. Estos plantearán las dudas que les hayan surgido en la resolución de losejercicios planteados.
En las primeras sesiones de tutoría el profesor recogerá información sobre la formación de cada estudiante y la asesorará sobre cómo corregir posibles carencias. En el resto de sesiones de tutoría se resolverán dudas y se discutirá la resolución de los problemas.
Actividades autónomas:
Los ejercicios y prácticas deberán ser resueltos de manera individual. No tiene ningún sentido, en esta asignatura, el formar grupos de prácticas de más de un alumno para resolver las prácticas.
*La metodología docente propuesta puede experimentar alguna modificación en función de las restricciones a la presencialidad que impongan las autoridades sanitarias.
Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.
Título | Horas | ECTS | Resultados de aprendizaje |
---|---|---|---|
Tipo: Dirigidas | |||
Clases teóricas, de problemas y prácticas | 45 | 1,8 | 7 |
Tipo: Autónomas | |||
Estudio personal y desarrollo de prácticas | 97 | 3,88 | 7 |
Módulo de teoría y problemas (peso 33%).
Examen final, haciendo que el alumno responda los conceptos teóricos a partir de problemas de programación que se plantean.
Módulo de prácticas (peso 66%)
Las dos prácticas de la asignatura contarán cada una como un 33% de la nota final.
Exámenes
Las Matrículas de Honor no se concederán a los estudiantes que opten por hacer el examen de recuperación.
Se aplicará la calificación "No evaluable" a los estudiantes que no se presenten al examen.
El examen de recuperación se aplica sólo a los estudiantes que no han aprobado la asignatura.
*La evaluación propuesta puede experimentar alguna modificación en función de las restricciones a la presencialidad que impongan las autoridades sanitarias.
Título | Peso | Horas | ECTS | Resultados de aprendizaje |
---|---|---|---|---|
Entrega de prácticas | 66% | 0 | 0 | 1, 2, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 |
Examen | 33% | 4 | 0,16 | 3, 4, 5, 8, 11 |
Examen de recuperación | 33% | 4 | 0,16 | 3, 4, 5, 8, 11 |
C
C/C++. Curso de programación. 4ª Edición.
JAVA
- Learning Java : An Introduction to Real-World Programming with Java
- Java Cookbook : Problems and Solutions for Java Developers
- Foundational Java : KeyElements and Practical Programming
PYTHON
- Python : an introduction to programming / James Parker
- Python 2: http://docs.python.org.ar/tutorial/pdfs/TutorialPython2.pdf
- Python 3: http://docs.python.org.ar/tutorial/pdfs/TutorialPython3.pdf
- Mark Lutz, "Learning Python", Ed. O'Reilly
- Raúl González Duque, "Python para todos", http://mundogeek.net/tutorial-python/
-"Python tutorial", https://www.tutorialspoint.com/python/
Otros libros
- "The C++ Programming Language", B.Stroustrup, 3ªed.,Addison-Wesley, 1997.
- "Programación en C/C++", M.Alfonseca, A.Sierra, Anaya-Multimedia, 1999.
- "El lenguaje de programación Java", K.Arnold, J.Gosling, Addison-Wesley, 1997
- "Programación en JAVA 2", J.Zukowski, Anaya-Multimedia, 1999
- "Descubre Java 1.2", M.Morgan, Prentice Hall, 1999.
- "Java2: The Complete Reference", P.Naughton, H.Schildt, Osborne/McGraw-Hill, 2000
- "Core Java" Volúmenes I y II, C.S.Horstmann, G.Cornell, Sun Microsystems Press.
https://www.codeblocks.org/downloads/binaries/
https://www.eclipse.org/downloads/
https://code.visualstudio.com/download