Guía docente de Fundamentos de la Programación (23111M5)

Curso 2022/2023
Fecha de aprobación: 14/06/2022

Grado

Grado en Información y Documentación

Rama

Ciencias Sociales y Jurídicas

Módulo

Tecnologías de la Información y Edición Digital

Materia

Fundamentos de Programación

Curso

3

Semestre

2

Créditos

6

Tipo

Optativa

Profesorado

Teórico

Silvia Acid Carrillo. Grupo: A

Práctico

Silvia Acid Carrillo Grupo: 1

Tutorías

Silvia Acid Carrillo

Email
  • Primer semestre
    • Lunes
      • 12:30 a 14:30 (D 68 (Etsiccp))
      • 16:00 a 18:00 (D 68 (Etsiccp))
    • Martes de 12:00 a 14:00 (D22 Etsiit)
  • Segundo semestre
    • Lunes de 13:30 a 14:30 (D21 Etsiit)
    • Miércoles
      • 12:30 a 14:20 (D21 Etsiit)
      • 18:30 a 20:30 (D21 Etsiit)
    • Jueves de 13:30 a 14:30 (D21 Etsiit)

Prerrequisitos y/o Recomendaciones

No hay.

Breve descripción de contenidos (Según memoria de verificación del Grado)

  • Introducción a la programación.
  • Algoritmos y programas.
  • Conceptos generales de programación dirigida a objetos.
  • Métodos y estructuras de control.
  • Estructuras de datos: cadenas, listas, conjuntos, diccionarios
  • Lectura y almacenamiento de datos en ficheros.
  • Adquisición de pensamiento computacional (descomposición, algoritmo y abstracción) para la resolución de problemas.
  • Prácticas de programación en sistemas de información.

 

Competencias

Competencias generales

  • CG02. Demostrar capacidad de organización y planificación  
  • CG05. Tener conocimientos de informática relativos al ámbito de estudio  
  • CG07. Resolver problemas  
  • CG08. Tomar decisiones  
  • CG10. Ser capaz de trabajar en un equipo de carácter interdisciplinar  
  • CG16. Aprender de forma autónoma 
  • CG17. Saber adaptarse a nuevas situaciones  
  • CG18. Tener creatividad  
  • CG19. Mostrar capacidades de liderazgo  

Competencias específicas

  • CE11. Utilizar y poner en práctica métodos, técnicas y herramientas informáticas y de redes de comunicación (hardware y software) para la implantación, desarrollo y explotación de sistemas de información.  

Resultados de aprendizaje (Objetivos)

  • Comprender los conceptos relacionados con el desarrollo de algoritmos y su aplicación a los sistemas de información.
  • Conocer los diferentes paradigmas de programación.
  • Saber utilizar herramientas de edición, compilación, y ejecución para desarrollar programas. Conocer las técnicas de depuración, prueba y corrección de programas.
  • Saber escoger la mejor estructura de datos para resolver un problema.
  • Ser capaz de manejar diferentes niveles de abstracción para estructurar el software a desarrollar.
  • Diseñar e implementar algoritmos para la resolución de problemas.

Programa de contenidos teóricos y prácticos

Teórico

Tema 1. Introducción a la programación de ordenadores

  • Resolución de problemas con ordenadores.
  • Algoritmo.
  • Metodología de la programación.
  • Lenguajes de programación. Traductores.
  • Entornos integrados de desarrollo (IDE).

Tema 2. Tipos de datos y estructuras de programación

  • Datos, tipos de datos y expresiones.
  • Operaciones de entrada, salida y asignación.
  • Estructura secuencial.
  • Estructuras condicionales.
  • Estructuras repetitivas.
  • Primeros programas.

Tema 3. Conceptos generales de programación dirigida a objetos

  • Clase y objeto.
  • Métodos.

Tema 4. Estructuras de datos

  • Estructuras Secuenciales (string)
  • Estructuras Asociativas (listas, diccionarios, ...)

Tema 5. Acceso a ficheros

  • Conceptos generales sobre ficheros
  • Lectura de ficheros
  • Escritura en ficheros

Tema 6. Funciones y procedimientos.

  • Programación modular.
  • Funciones y procedimientos.
  • Parámetros formales y actuales.

Práctico

PROGRAMA DE PRÁCTICAS

  • Manejo de un IDE, primeros programas
  • Condicionales en Python.
  • Bucles en Python.
  • Datos estructurados en Python.
  • Programación modular en Python.
  • Uso básico de ficheros en Python.

SEMINARIOS

Seminario 1. Diseño de soluciones a problemas mediante el ordenador.

Seminario 2. Alternativas, instalación y uso de IDEs.

Seminario 3. Buenas costumbres y convenios en la construcción de programas.

Seminario 4. Diseño de soluciones modulares a problemas mediante el ordenador.

Seminario 5. Acceso a bases de datos desde programas.

Seminario 6. Desarrollo de aplicaciones para Sistemas de Información.

Bibliografía

Bibliografía fundamental

 

  • Python para todos. Raúl Gonzalez Duque. Creative Commons Atribución-NoComercial
  • Andrés Marzal Varó, Isabel Gracia Luengo, Pedro García Sevilla. Introducción a la Programación con Python 3. Publicacions de la Universitat Jaume I, 2014. http://repositori.uji.es/xmlui/bitstream/10234/102653/1/s93.pdf
  • Python para informáticos. Explorando la información. Charles Severance
  • Curso de Python para principiantes. Eugenia Bahit. Creative Commons Atribución-NoComercial.

Bibliografía complementaria

 

  • Python for Everyone. C. Horstmann, R Necsaise en Wiley
  • Langtangen, H.P., A Primer on Scientific Programming with Python(3ª ed), Springer, 2012.

Enlaces recomendados

Metodología docente

  • MD01. Clases de teoría (lección magistral) 
  • MD02. Clases de problemas y/o de prácticas 
  • MD03. Seminarios 
  • MD04. Tutorías 
  • MD05. Trabajo autónomo del alumnado 

Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final)

Evaluación ordinaria

La asignatura se evalúa teniendo en cuenta un 30% la nota de teoría y un 70% la nota de prácticas.

La evaluación de prácticas consta de distintas pruebas evaluables programadas para el curso ( realización de programas a desarrollar tanto en el aula como fuera de ella además de cuestionarios y otras actividades contempladas en la plataforma Prado).

  • Para los alumnos que tengan una asistencia regular a clase (más del 80% de las clases) podrán optar a 7 puntos correspondiente a la parte práctica mientras que los 3 puntos de teoría se podrán obtener en el examen final convocado por la Facultad.
  • Aquellos alumnos que no mantengan una asistencia regular (menos del 80%) o no tenga la parte de prácticas aprobada podrán examinarse en el examen final tanto de la parte de teoría como de la parte práctica, en ordenador, en un mismo acto académico en la fecha convocada por la Facultad.

La suma de teoría, prácticas deberá ser 5 como mínimo para superar la asignatura.

Evaluación extraordinaria

La evaluación en la convocatoria extraordinaria consistirá en una prueba teórico-práctica delante del ordenador, donde se evaluará tanto teoría como prácticas, la ponderación en este caso es teoría 30% y práctica 70%.

Para aquellos alumnos que en la convocatoria ordinaria siguieran el procedimiento de evaluación continua y cumplieran con la asistencia a las prácticas, si lo desean, podrán conservar su calificación de prácticas para la convocatoria extraordinaria. La calificación de prácticas no se guardará de un curso académico para el siguiente.

La suma de teoría, prácticas deberá ser 5 como mínimo para superar la asignatura.

Evaluación única final

Esta modalidad de evaluación se realizará en un único acto académico y consistirá en una prueba teórico-práctica delante del ordenador, donde se evaluará tanto teoría como prácticas, manteniendo el porcentaje de teoría 30% y de práctica 70%.

Información adicional

Todas las clases se realizan en aula de ordenadores ya que tras las exposiciones breves de conceptos en clase por parte del profesor se pone en práctica inmediatamente en ejercicios en el entorno de programación. Todas las resoluciones de problemas se hacen directamente en el entorno de programación.