Study programme competencies |
Code
|
Study programme competences
|
A3 |
CE3 – To analyze, design, develop, implement, verify and document efficient software solutions based on an adequate knowledge of the theories, models and techniques in the field of Bioinformatics |
B1 |
CB6 - Own and understand knowledge that can provide a base or opportunity to be original in the development and/or application of ideas, often in a context of research |
B5 |
CB10 - Students should possess learning skills that allow them to continue studying in a way that will largely be self-directed or autonomous. |
B8 |
CG3 - Be able to work in a team, especially of interdisciplinary nature |
C3 |
CT3 - Use the basic tools of the information technology and communications (ICT) necessary for the exercise of their profession and lifelong learning |
C6 |
CT6 - To assess critically the knowledge, technology and information available to solve the problems they face to. |
Learning aims |
Learning outcomes |
Study programme competences |
Interiorizar as boas prácticas de programación. |
AJ3
|
BJ5 BJ8
|
|
Usar as estructuras de datos adecuadas e programar os algoritmos de manipulación para solucionar problemas reais. |
AJ3
|
BJ1 BJ8
|
|
Capacidade para realizar programas sinxelos no computador empregando unha linguaxe de alto nivel. |
AJ3
|
BJ1 BJ5 BJ8
|
CJ3 CJ6
|
Ser capaz de deseñar, avaliar, comparar e analizar solucións algorítmicas básicas a problemas usuais en Bioinformática. |
AJ3
|
BJ1
|
CJ6
|
Contents |
Topic |
Sub-topic |
1. Introducción |
a. Algoritmos. Representación. Accións primitivas/no primitivas
b. Programas. Proceso de construcción
c. Linguaxes de programación: máquina, baixo nivel, alto nivel
d. Compiladores. Intérpretes
e. Entornos de desenvolvemento e ferramentas: Python |
2. Conceptos básicos |
a. Estructura de un programa
b. Constantes, Variables.
c. Tipos de datos: entero, real, lógico, carácter, …
d. Estructuras simples: listas (arrays), cadenas, …
e. Operadores y expresiones (aritméticas, lógicas)
f. Declaración de variables e constantes
g. Entrada y salida estándar |
3. Sentencias de control
|
a. Secuencial
b. Alternativa
c. Repetitiva: while, for |
4. Funcións |
a. Definición, declaración e chamada de función
b. O ámbito das variables
c. Paso de argumentos
d. Recursividad
e. Módulos |
5. Ficheiros |
a. Apertura e peche
b. Lectura e escritura de datos
c. Acceso directo aos datos |
6. Introducción a estructuras abstractas |
a. Listas
b. Pilas
c. Colas
d. Árbores |
6. Introducción á orientación a obxetos |
a. Clases
b. Obxetos
c. Propiedades
d. Métodos
e. Concepto de herencia |
7. Excepcións |
a. Tipos
b. Captura
c. Lanzamento
d. Creación |
8. Librerías científicas en Python |
a. SciPy
b. NumPy
c. Matplotlib
d. BioPython |
Planning |
Methodologies / tests |
Competencies |
Ordinary class hours |
Student’s personal work hours |
Total hours |
Laboratory practice |
A3 B8 C3 C6 |
14 |
42 |
56 |
Problem solving |
A3 B8 |
5 |
15 |
20 |
Mixed objective/subjective test |
A3 |
2 |
6 |
8 |
Guest lecture / keynote speech |
A3 B5 B1 |
21 |
42 |
63 |
|
Personalized attention |
|
3 |
0 |
3 |
|
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students. |
Methodologies |
Methodologies |
Description |
Laboratory practice |
Desenvolvemento de prácticas no laboratorio. Esta actividade supoñerá o estudo de casos prácticos e exemplos ademais da realización de distintos exercicios de programación de entrega obrigatoria. A proposta de actividades estará dispoñible ao alumno con suficiente antelación. O labor do profesor será a supervisión das sesións, solucionando dúbidas e corrixindo erros de interpretación, malos hábitos de programación, erros de sintaxes, etc. |
Problem solving |
Co fin de afianzar os conceptos teóricos presentaranse supostos prácticos, que nun principio serán resoltos polo profesor para que orienten os alumnos. A medida que se avance no desenvolvemento teórico formularase a resolución de problemas por parte dos alumnos, constituídos en grupos de traballo. Dita actividade, así como a discusión e participación activa en clase, valoraranse na nota final.
Poderanse formular exercicios adicionais que o alumno deberá resolver e comentar/corrixir co profesor durante as horas de titorías, colectivas e/ou individuais. |
Mixed objective/subjective test |
Avaliación sumativa do alumno mediante un exame escrito cunha parte teórica con distintos tipos de preguntas e unha parte práctica para resolver pequenos problemas de programación. A proba tratará de medir se o alumno adquiriu os conceptos fundamentais de programación e adestrouse o suficiente como para posuír as habilidades precisas para resolver supostos prácticos. |
Guest lecture / keynote speech |
Actividade presencial para expoñer conceptos fundamentais da materia. Consistirá na exposición oral do profesor apoiada con medios multimedia. Durante a presentación tratarase de interactuar co alumno formulando preguntas dirixidas co fin de afianzar conceptos e facilitar a aprendizaxe. |
Personalized attention |
Methodologies
|
Laboratory practice |
|
Description |
É fundamental a atención ao alumno para resolvar cantas dúbidas de concepto ou de procedemento poidan xurdir durante a resolución dos supostos prácticos. Prestarase especial atención a aqueles alumnos que presenten maiores dificultades na súa aprendizaxe co fin de que o seu progreso non se vexa retardado respecto ao xeneral do resto de estudantes. |
|
Assessment |
Methodologies
|
Competencies |
Description
|
Qualification
|
Problem solving |
A3 B8 |
Valorarase a participación do alumno durante estas clases así como a realización de diversos traballos puntuables que se detallarán durante o curso e que se resolverán nas titorías de grupos reducidos. |
5 |
Laboratory practice |
A3 B8 C3 C6 |
Realización obrigatoria segun as condicións establecidas no enunciado de cada práctica. Necesario aprobar as prácticas para superar a materia. |
60 |
Mixed objective/subjective test |
A3 |
Realización obrigatoria. Necesario aprobar o exame para superar a materia |
35 |
|
Assessment comments |
Traballos prácticos - Soamente os alumnos con cualificación de NON APTO ou NON PRESENTADO en prácticas na primeira oportunidade poderán entregar os traballos de acordo ao enunciado práctico que se propoña para a segunda oportunidade. - De acordo ao artigo 14, apartado 4, da normativa*, o plaxio dos traballos prácticos levará unha nota global de NON APTO, tanto ao estudante que presente material copiado como ao que o facilitara, e por tanto a cualificación de SUSPENSO na convocatoria anual. Primeira e segunda oportunidade - As cualificacións obtidas en actividades como prácticas de laboratorio e solución de problemas serán válidas tan só para o curso académico no que se realicen. Manteranse para aqueles alumnos suspensos ou non presentados na primeira oportunidade. Só aqueles con prácticas SUSPENSAS terán a opción de realizar de novo as prácticas. Matrícula a tempo parcial - Os alumnos matriculados a tempo parcial terán que entregar as actividades avaliables nas condicións e prazos específicos que se establecerán. Será obrigación do estudante comunicar a súa situación ao profesorado. Non presentado - Terá a condición de ?Non presentado? (NP) quen non concorra á proba obxectiva no período oficial de avaliación. Oportunidade adiantada de Decembro - A avaliación da oportunidade adiantada basearase exclusivamente nunha proba escrita. * Normativa de avaliación, revisión e reclamación das cualificacións dos estudos de grao e máster universitario, aprobadas polo Consello de Goberno da Universidade dá Coruña o 19 de diciembro de 2013.
|
Sources of information |
Basic
|
Luis Joyanes Aguilar (2008). Fundamentos de programación : algoritmos, estructuras de datos y objetos. McGraw Hill
Mark Lutz (2013). Learning Python, Fifth Edition. O’Reilly Media, Inc
Raúl González Duque (). Python PARA TODOS. http://edge.launchpad.net/improve-python-spanish-doc/0.4/0.4.0/+download/Python%20para%20todos.pdf
Vernon L Ceder (2010). The quick Python book. Greenwich : Manning
Jesús J. García Molina, Francisco J. Montoya Dato, José L. Fernández Alemán, Mª José Majado Rosales (2005). Una introducción a la programación : un enfoque algorítmico. Thomson |
|
Complementary
|
Mitchell L Model (2009). Bioinformatics Programming Using Python. O'Reilly Media
Bill Lubanovic (2014). Introducing Python: Modern Computing in Simple Packages. O'Reilly Media |
|
Recommendations |
Subjects that it is recommended to have taken before |
|
Subjects that are recommended to be taken simultaneously |
|
Subjects that continue the syllabus |
Introdución ás bases de datos/614522002 | Estruturas de datos e algoritmia para secuencias biolóxicas/614522013 |
|
|