Denominación de la asignatura |
Fundamentos de Programación |
Grado al que pertenece |
Grado en Diseño Digital |
Créditos ECTS |
6 |
Curso y cuatrimestre en el que se imparte |
Primer curso, primer cuatrimestre |
Carácter de la asignatura | Básica |
En la asignatura de Fundamentos de Programación se busca que el alumno adquiera las competencias necesarias para entender la implicación de la programación en el diseño, desarrollo e implementación de aplicaciones informáticas. Para ello, va utilizarse Python, un lenguaje de alto nivel, aunque el curso está diseñado para que el alumno sea capaz de programar correcta y eficientemente, con independencia del lenguaje de programación que posteriormente tenga que utilizar en su entorno profesional.
La asignatura se estructura en capítulos que describen los fundamentos generales de la programación, válidos para cualquier lenguaje que quiera emplearse y aquellos en los que los conocimientos adquiridos se ponen en práctica y se refuerzan empleando el lenguaje Python. Los temas que se tratan son la base para el desarrollo de cualquier aplicación informática: algoritmos, programación modular y estructurada, tipos de datos, diagramas de flujo, subprogramas, control de archivos, recursividad, etc.
Además se ha tenido en cuenta el grado en el que se encuentra la asignatura, Diseño Digital, en el que los alumnos en general no tienen una orientación técnica. Por tanto, se han incluido dos temas que generalmente no se presentan en este tipo de cursos, pero que pueden ser de especial interés para el alumnado: introducción al manejo de imágenes y a la programación de la Interfaz Gráfica de Usuario (GUI).
Competencias básicas
Competencias generales
Competencias específicas
Competencias transversales
Tema 1. Conceptos básicos sobre programación
Concepto de computador
Los lenguajes de programación
Ensambladores, compiladores e intérpretes
Tema 2. Programación modular y estructurada
Estructura de un programa
Algoritmos
Programación modular y estructurada
Tema 3. Tipos de datos
Constantes y variables
Expresiones, identificadores y palabras reservadas
Tipos de datos simples: numéricos, caracteres, lógicos
Tipos de datos compuestos: cadenas, vectores, matrices y listas
Tema 4. Estructuras de control
Tipos de estructuras de control
Estructura secuencial
Estructuras selectivas: bifurcación condicional
Estructuras repetitivas: bucles
Bifurcaciones incondicionales
Tema 5. Introducción a la programación en Python
Estructura de un programa
Módulos y paquetes
Módulos y paquetes
Tipos de datos simples
Estructuras de control
Tema 6. Subprogramas
Introducción a los subprogramas
Funciones y procedimientos
Ámbito y visibilidad
Funciones en Python
Tema 7. Estructuras de datos
Qué es la programación orientada a objetos
Conceptos fundamentales
POO en Python
Tema 8. Funciones en Python
Introducción
Listas
Tuplas
Diccionarios
Pilas
Colas
Tema 9. Archivos y ficheros
Conceptos y definiciones
Soporte y acceso
Clasificación de archivos y operaciones
Procesamiento de archivos
Tema 10. Recursividad
Recursividad: definición
Diseño de algoritmos recursivos
Recursión e iteración
Ejemplos
Tema 11. Ficheros y recursividad en Python
Ficheros
Recursividad
Tema 12. Documentación y depuración
Documentación de programas
Documentación de especificaciones
Guía técnica
Manual de usuario
Guía de instalación
Depuración de programas
Las actividades formativas de la asignatura se han elaborado con el objetivo de adaptar el proceso de aprendizaje a las diferentes capacidades, necesidades e intereses de los alumnos.
Las actividades formativas de esta asignatura son las siguientes:
En la programación semanal puedes consultar cuáles son las actividades concretas que tienes que realizar en esta asignatura.
Estas actividades formativas prácticas se completan, por supuesto, con estas otras:
Las horas dedicadas a cada actividad se detallan en la siguiente tabla:
ACTIVIDADES FORMATIVAS |
HORAS |
% PRESENCIAL |
Sesiones presenciales virtuales | 15 |
100 |
Sesiones virtuales asíncronas | 3 |
0 |
Estudio Personal de material básico | 50 |
0 |
Lectura y análisis de material complementario | 25 |
0 |
Trabajos, Proyectos y Casos Prácticos | 30 |
0 |
Test de autoevaluación | 4 |
0 |
Tutorías | 16 |
0 |
Trabajo colaborativo | 7 |
0 |
Total | 150 |
Para la correcta participación de los alumnos en las diferentes actividades propuestas en la asignatura se recomienda disponer de un ordenador con las siguientes especificaciones mínimas recomendadas:
Además se necesitará el siguiente software (del que encontrarás más información en el aula virtual):
Bibliografía básica
Los textos necesarios para el estudio de la asignatura han sido elaborados por UNIR y están disponibles en formato digital para consulta, descarga e impresión en el aula virtual.
Bibliografía complementaria
Cuevas Álvarez, A. (2019). Programar con Python 3. Madrid: RA-MA Editorial.
Dev Mishra, A. & Grag, D. (2008). Selection of best sorting algorithm. International Journal of Intellifent Information Processing, 2(2), 363-368.
Dijkstra, E. (1968). Go To Statement Considered Harmful. Eindhoven: Technological University.
Fernández, A. (2012). Python 3 al descubierto. Madrid: Ed. RC Libros.
Fernández Huerta, I. y Díez, P. E. (2017). Fundamentos Básicos de Programación: Aplicación Práctica con Scratch y Phyton. Madrid: Delta Publicaciones.
García, M. C. (14 de octubre de 2013). Paradigmas de programación. Recuperado de http://michelletorres.mx
Joyanes, L. (2008). Fundamentos de la programación. Algoritmos y Estructura de Datos (4ª Ed). Madrid: McGraw-Hill.
López, J. & Quero, E. (2000). Fundamentos de programación. Madrid: Ed. Paraninfo.
Librería estándar. Recuperado de https://docs.python.org/dev/library/index.html
Montejo Báez, A. y Jiménez Zafra, S. M. (2019). Curso de Programación Python. Madrid: Grupo Anaya Publicaciones Generales.
Serna, M. (2013). Prueba funcional del software. Un proceso de verificación constante. Medellín: Fondo Editorial, ITM.
Università di Napoli Federico II (2001). The 68000's Instruction Set. Recuperado de: http://www.grid.unina.it/
Valls, J. M. & Camacho, C. (2004). Programación estructurada y algoritmos en PASCAL. Madrid: Pearson Educación.
Varios autores (2019)Introducción a la programación informática (APRENDIZAJE Y DESARROLLO). Madrid: DK
Von Neumann, J. (1945). First Draft of a Report on the EDVAC. Pennsylvania. Moore School of Electrical Engineering University of Pennsylvania.
El sistema de calificación se basa en la siguiente escala numérica:
0 - 4, 9 |
Suspenso |
(SS) |
5,0 - 6,9 |
Aprobado |
(AP) |
7,0 - 8,9 |
Notable |
(NT) |
9,0 - 10 |
Sobresaliente |
(SB) |
La calificación se compone de dos partes principales:
El examen se realiza al final del cuatrimestre y es de carácter PRESENCIAL y OBLIGATORIO. Supone el 60% de la calificación final y para que la nota obtenida en este examen se sume a la nota final, es obligatorio APROBARLO.
La evaluación continua supone el 40% de la calificación final. Este 40% de la nota final se compone de las calificaciones obtenidas en las diferentes actividades formativas llevadas a cabo durante el cuatrimestre.
Ten en cuenta que la suma de las puntuaciones de las actividades de la evaluación continua permite que realices las que prefieras hasta conseguir el máximo puntuable mencionado. En la programación semanal de la asignatura, se detalla la calificación máxima de cada actividad o evento concreto puntuables.
SISTEMAS DE EVALUACIÓN |
PONDERACIÓN MIN. |
PONDERACIÓN MÁX. |
Participación en foros y otros medios participativos | 10% |
10% |
Realización de trabajos, proyectos y casos | 20% |
20% |
Test de evaluación | 10% |
10% |
Prueba de evaluación final presencial | 60% |
60% |
Cinthia De Oleo Moreta
Formación académica: Doctora en Ingeniería Informática y Máster en Ingeniería de Software por la Universidad Pontificia de Salamanca.
Experiencia: Actualmente participa en varias titulaciones en la Escuela Superior de Ingeniería y Tecnología, realizando tanto tareas docentes como de gestión. Ha trabajado en varias empresas de consultoría informática: VASS Consultoría de Sistemas, y Digitex Informática, realizando desarrollos evolutivos, mantenimiento correctivo, y resolución de incidencias para clientes como CapGemini, Orange y Movistar.
Líneas de investigación: Su área de investigación se centra en la usabilidad, la accesibilidad, la experiencia de usuario y el diseño centrado en el usuario, campo en el que ha dirigido varios Trabajos de Fin de Máster. Cabe resaltar que su tesis doctoral sobre usabilidad web con personas mayores fue calificada como Sobresaliente Cum Laude.
Obviamente, al tratarse de formación on-line puedes organizar tu tiempo de estudio como desees, siempre y cuando vayas cumpliendo las fechas de entrega de actividades, trabajos y exámenes. Nosotros, para ayudarte, te proponemos los siguientes pasos:
Recuerda que en el aula virtual de Lo que necesitas saber antes de empezar puedes consultar el funcionamiento de las distintas herramientas del aula virtual: Correo, Foro, Sesiones presenciales virtuales, Envío de actividades, etc.
Ten en cuenta estos consejos…
|