Última actualización: 12/06/2025 23:09:42


Curso Académico: 2025/2026

Técnicas de Programación
(19768)
Grado en Neurociencia (Plan: 517 - Estudio: 389)


Coordinador/a: MUÑOZ BARRUTIA, MARIA ARRATE

Departamento asignado a la asignatura: Departamento de Neurociencia y Ciencias Biomédicas

Tipo: Obligatoria
Créditos: 6.0 ECTS

Curso:
Cuatrimestre:




Requisitos (Asignaturas o materias cuyo conocimiento se presupone)
Siendo una asignatura introductoria no existe ningún requisito obligatorio, aunque se presuponen habilidades básicas en el uso de ordenadores, manejo de archivos y en conceptos básicos de matemáticas. Para un óptimo aprovechamiento de la asignatura, se recomienda familiarizarse antes con el lenguaje de programación Python.
Objetivos
El objetivo principal de este curso es proporcionar a los estudiantes una base sólida en programación, con especial énfasis en aplicaciones prácticas en el campo de la neurociencia. Al finalizar el curso, los estudiantes serán capaces de: Comprender los fundamentos de la arquitectura computacional, los lenguajes de programación y su aplicabilidad al estudio del cerebro. Diseñar algoritmos básicos utilizando pseudocódigo y diagramas de flujo. Manejar y analizar datos experimentales, utilizando con Python estructuras de control, funciones, módulos y librerias científicas como SciPy y Scikit-learn. Utilizar estructuras de datos adecuadas para representar información experimental compleja (e.g., matrices multivariadas, series temporales). Aplicar técnicas de depuración y optimización de código para mejorar la calidad del software orientado al ámbito de la neurociencia. Manejo de archivos de entrada y salida comunes en investigación neurocientífica (e.g., datos en formatos ASCII, binarios o CSV).
Resultados del proceso de formación y aprendizaje
K14: Describe mediante modelos matemáticos computaciones y sus lenguajes de programación, el funcionamiento de los sistemas operativos neuronales y sus posibilidades de interacción con dispositivos externos. S1: Utiliza diferentes técnicas para encontrar, manejar, integrar y evaluar con sentido crítico la información disponible para el desarrollo de actividades en Neurociencia, especialmente en el ámbito digital. S4: Utiliza capacidad de análisis y síntesis, así como de aplicar los principios del método científico en el entorno laboral, con el fin de dar respuestas innovadoras a las necesidades y demandas de la sociedad en su área. S5: Utiliza adecuadamente el vocabulario científico y técnico propio de los diferentes ámbitos de la Neurociencia. S7: Demuestra conocimiento y capacidad para aplicar herramientas computacionales y experimentales para el análisis y cuantificación de problemas en Neurociencias. C2: Aplica sus conocimientos sobre la organización, estructura y función del Sistema Nervioso Central (SNC) para contribuir a la evolución y mejora de tecnologías y sistemas de computación, manejo y análisis de datos. C3: Aplica su conocimiento de la tecnología para el estudio del Sistema Nervioso y el cerebro (Imagen Médica, interfaces cerebro-máquina) para desarrollar nuevos sistemas de diagnóstico, tratamiento y otras aplicaciones de la Neurociencia (Inteligencia Artificial, Robótica) con el objetivo de mejorar la calidad de vida y progreso social. C4: Utiliza herramientas avanzadas de matemáticas, estadística y computación para aumentar y mejorar el conocimiento en Neurociencias y sus aplicaciones. C5: Aplica los conocimientos necesarios para su integración en equipos multidisciplinares (sector farmacéutico, sanitario, técnicas de diagnóstico, tecnologías de la información en salud, agencias y organismos regulatorios) en los que la Neurociencia sea un área vertebradora de soluciones. C6: Aplica en su actividad profesional el resultado de una formación integral, aunando el conocimiento en Neurociencias con unos sólidos fundamentos de responsabilidad ética y respeto por los derechos fundamentales, la diversidad y los valores democráticos. C7: Aplica en su actividad profesional los principios consustanciales a una formación de grado de naturaleza científico-técnica, así como la necesidad de un aprendizaje autónomo que le permita adaptarse a nuevas situaciones originadas por desarrollo científico y tecnológico.
Descripción de contenidos: Programa
1. Introducción - Arquitectura de un ordenador - Lenguajes de programación - Compilación y ejecución de programas 2. Fundamentos de programación - Paradigmas de programación - Elementos de un programa: datos y algoritmos - Herramientas básicas de programación: algoritmos, diagramas de flujo y pseudocódigo 3. Programación en Python - Características del lenguaje Python - Trabajando con matrices - Expresiones - Operadores 4. Control de Flujo - Sentencias condicionales - Bucles 5. Funciones y Scripts - Funciones - Scripts 6. Estructuras de datos - Caracteres y texto - Arrays multidimensionales - Cell Arrays - Estructuras 7. Entrada y Salida - Importar / Exportar datos - Ficheros ASCII y Binarios 8. Librerías científicas en Python - ScyPy, Scikit-learn 9. Técnicas Avanzadas - Depuración, prueba y control de errores - Recursividad
Actividades formativas, metodología a utilizar y régimen de tutorías
Clases presenciales magistrales. Clases presenciales reducidos (talleres, seminarios, casos prácticos). Trabajo individual del estudiante. Sesiones de laboratorios. Examen final. Seminarios y lecciones magistrales con apoyo de medios informáticos y audiovisuales. Aprendizaje práctico basado en casos y problemas y resolución de ejercicios. Trabajo individual y en grupo o cooperativo con opción a presentación oral o escrita. Tutorías individuales y en grupo para resolución de dudas y consultas sobre la materia. Prácticas y actividades dirigidas de laboratorios.
Sistema de evaluación
  • Peso porcentual del Examen/Prueba Final 60
  • Peso porcentual del resto de la evaluación 40




Convocatoria extraordinaria: normativa

El programa de la asignatura podría sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.