Guía Docente 2023-24
FUNDAMENTOS DE PROGRAMACIÓN

DATOS BÁSICOS DE LA GUÍA DOCENTE:

Materia: FUNDAMENTOS DE PROGRAMACIÓN
Identificador: 33647
Titulación: DOBLE GRADO EN FARMACIA Y BIOINFORMÁTICA. PLAN 2019
Módulo: INFORMÁTICA
Tipo: MATERIA BASICA
Curso: 1 Periodo lectivo: Primer Cuatrimestre
Créditos: 6 Horas totales: 150
Actividades Presenciales: 60 Trabajo Autónomo: 90
Idioma Principal: Castellano Idioma Secundario: Inglés
Profesor: Correo electrónico:

PRESENTACIÓN:

La asignatura supone la primera toma de contacto con la programación informática en la universidad. Se trata de un pilar fundamental para el buen desarrollo académico y profesional. En el mundo profesional, se trata de uno de los campos en el mundo de la informática de mayor dimensión tanto social como económicamente.
 
En esta asignatura se aprenderá a analizar y resolver problemas de tratamiento de información de complejidad baja o media y a construir algoritmos que los resuelvan. Para ello se deberá aprender a representar la información asociada a cada problema y se deberá ser capaz de diseñar y documentar las acciones algorítmicas que los resuelvan de forma eficaz y eficiente. 

COMPETENCIAS PROFESIONALES A DESARROLLAR EN LA MATERIA:

Competencias Generales de la titulación G01 Utilizar estrategias de aprendizaje de forma autónoma para su aplicación en la mejora continua del ejercicio profesional.
G02 Realizar el análisis y la síntesis de problemas propios de su actividad profesional y aplicarlos en entornos similares.
G03 Cooperar para la consecución de resultados comunes mediante el trabajo en equipo en un contexto de integración, colaboración y potenciación de la discusión crítica.
G05 Comunicar en lengua castellana y/ o inglesa temas profesionales en forma oral y escrita.
G06 Resolver los problemas o imprevistos complejos que surgen durante la actividad profesional dentro de cualquier tipo de organización y la adaptación a las necesidades y exigencias de su entorno profesional.
G07 Elegir entre diferentes modelos complejos de conocimiento para su aplicación a la resolución de problemas.
G09 Aplicar las tecnologías de la información y comunicación en el ámbito profesional.
G10 Aplicar la creatividad, independencia de pensamiento, autocrítica y autonomía en el ejercicio profesional.
Competencias Específicas de la titulación E02 Desarrollar el uso y la programación de ordenadores, bases de datos y programas informáticos y su aplicación en la bioinformática.
E03 Aplicar los conceptos fundamentales de matemáticas, lógica, algorítmica y complejidad computacional para la resolución de problemas propios de la bioinformática.
E04 Programar aplicaciones de forma robusta, correcta, y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados, aplicando los conocimientos sobre procedimientos algorítmicos básicos y usando los tipos y estructuras de datos más apropiados.
E05 Implementar aplicaciones fundamentadas, previamente diseñadas y analizadas, en las características de las bases de datos.
E07 Aplicar los principios, metodologías y ciclos de vida de la ingeniería de software al desarrollo de un proyecto en el ámbito de la bioinformática.
E08 Evaluar aplicaciones y sistemas informáticos, previamente diseñados, desarrollados y seleccionados, asegurando su fiabilidad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
E09 Elaborar y mantener documentación descriptiva de la génesis, producción y operatividad de los sistemas informáticos.
E10 Diseñar y desplegar la arquitectura de sistemas IT mediante la definición del software, hardware y las comunicaciones necesarias de acuerdo con unos requisitos.
E11 Aplicar los principios y técnicas de la computación concurrente o paralela para la creación y simulación de procesos bio-inspirado

REQUISITOS PREVIOS:

No es necesario poseer ningún requisito previo. Es recomendable tener un buen conocimiento de los contenidos matemáticos elementales.

PROGRAMACIÓN DE LA MATERIA:

Contenidos de la materia:

1 - Aspectos básicos
    1.1 - Introducción
    1.2 - Variables y operadores
    1.3 - Control de flujo
    1.4 - Algoritmia y pseudocódigo
2 - Funciones, arrays y punteros
    2.1 - Funciones
    2.2 - Arrays, punteros y strings
3 - Estructuras, memoria y E/S
    3.1 - Estructuras
    3.2 - Asignación dinámica de memoria
    3.3 - Entrada y salida, ficheros
    3.4 - Funciones avanzadas

La planificación de la asignatura podrá verse modificada por motivos imprevistos (rendimiento del grupo, disponibilidad de recursos, modificaciones en el calendario académico, etc.) y por tanto no deberá considerarse como definitiva y cerrada.


METODOLOGÍAS Y ACTIVIDADES DE ENSEÑANZA Y APRENDIZAJE:

Metodologías de enseñanza-aprendizaje a desarrollar:

a) Sesiones teóricas
La profesora expondrá apoyada en recursos TIC (portátil, proyector, Internet) y la pizarra la mayor parte teórica básica de la asignatura durante las sesiones presenciales obligatorias. El material utilizado en cada sesión estará siempre en la PDU con antelación para que el alumnado pueda realizar una lectura previa. Se recomienda encarecidamente leer con anterioridad los temas a tratar en clase. Las sesiones de asistencia obligatoria no se grabarán por defecto. Las sesiones presenciales de asistencia no obligatoria podrán grabarse y ponerse a disposición del alumnado en la PDU. 
 
b) Aprendizaje basado en resolución de ejercicios y problemas
Los contenidos teóricos se apoyan en la resolución de problemas que serán propuestos por la profesora. Estos problemas serán solucionados, en su mayoría, por el alumnado como parte de su trabajo autónomo en las sesiones de asistencia no obligatoria. De forma puntual algunos problemas se resolverán por la profesora en las clases presenciales previa petición del alumnado.
 
c) Aprendizaje basado la solución de prácticas y proyectos
Una parte muy importante del aprendizaje de la asignatura se conseguirá con la resolución de prácticas a resolver de manera individual. La profesora proporcionará los enunciados de las prácticas y se solicitará su entrega en un tiempo prudencial. Cada práctica consistirá en la realización de un pequeño proyecto relacionado con un bloque temático de la asignatura, sin olvidar el carácter continuo del aprendizaje de la misma. La resolución de estas prácticas y de los problemas citados en el apartado b) se considera indispensable para adquirir las competencias propias de la asignatura.
 
d) Sesiones de tutoría
El alumnado podrá preguntar a la profesora aquellas dudas que no han podido ser resueltas durante las sesiones presenciales o que hayan surgido en su tiempo dedicado al trabajo autónomo. Para las sesiones de tutoría se podrán utilizar los distintos medios tecnológicos disponibles (adobe connect, foros de la PDU, etc). 

Volumen de trabajo del alumno:

Modalidad organizativa Métodos de enseñanza Horas estimadas
Actividades Presenciales
Clase magistral 22
Otras actividades teóricas 4
Resolución de prácticas, problemas, ejercicios etc. 12
Debates 2
Talleres 8
Prácticas de laboratorio 3
Actividades de evaluación 9
Trabajo Autónomo
Asistencia a tutorías 8
Estudio individual 37
Preparación de trabajos individuales 45
Horas totales: 150

SISTEMA DE EVALUACIÓN:

Obtención de la nota final:

Pruebas escritas: 60 %
Trabajos individuales: 30 %
Evaluación continua: 10 %
TOTAL 100 %

*Las observaciones específicas sobre el sistema de evaluación serán comunicadas por escrito a los alumnos al inicio de la materia.

BIBLIOGRAFÍA Y DOCUMENTACIÓN:

Bibliografía básica:

Kerningham, N.B., Ritchie, M.D. El lenguaje de programación C. ISBN: 9688802050
Joyanes Aguilar, L., Zahonero Martínez Ignacio. Programación en C. ISBN: 8448198441

Bibliografía recomendada:

Byron Gottfrieg. Programación en C. ISBN: 8448198468
G. Brassard, P. Bratley. Fundamentos de Algoritmia ISBN: 848966000X

Páginas web recomendadas:

Site con información sobre programación en C www.cprogramming.com
Página con compiladores de C www.thefreecountry.com/compilers/cpp.shtml


* Guía Docente sujeta a modificaciones