-
Presentation
Presentation
The curricular unit “Programming for Biosciences II” builds upon the foundations established in the previous course, focusing on advanced programming techniques applied to Medical Sciences. It is part of the Bachelor's degree in Computational Biomedicine and Artificial Intelligence, contributing to training in bioinformatics, biological systems modelling, multi-omics data analysis, and computational solutions for clinical and laboratory problems. This unit prepares students for demanding scientific and professional environments, fostering critical thinking, computational innovation, and integration between algorithms and real biomedical data.
-
Class from course
Class from course
-
Degree | Semesters | ECTS
Degree | Semesters | ECTS
Bachelor | Semestral | 5
-
Year | Nature | Language
Year | Nature | Language
1 | Mandatory | Português
-
Code
Code
ULHT7037-26612
-
Prerequisites and corequisites
Prerequisites and corequisites
Not applicable
-
Professional Internship
Professional Internship
Não
-
Syllabus
Syllabus
OOP: classes, objects, inheritance, and polymorphism in biological modelling Advanced data structures: trees, graphs, search and sort algorithms Algorithm analysis: Big O notation and computational efficiency BioPython/BioJulia: genetic sequence analysis and visualization Databases: SQL, CRUD operations, and BLAST Simulation: Monte Carlo and molecular dynamics Parallel computing: sequence alignment Visualization: biological networks and molecular structures GUI and lab system integration
-
Objectives
Objectives
Knowledge: Master advanced programming techniques, such as parallelism and algorithms applied to genomics. Understanding: Justify the use of programming paradigms and data structures in biological contexts, considering biomedical data specificities. Application: Implement solutions for multi-omics integration, biological system simulation, and predictive modeling. Analysis: Diagnose and optimize code for computational efficiency and precision in bioinformatics. Synthesis: Combine programming and biomedical knowledge to solve complex problems. Assessment: Critically evaluate advances at the intersection of programming and medicine, with ethical and practical awareness.
-
Teaching methodologies and assessment
Teaching methodologies and assessment
This course adopts innovative, student-centered methodologies, integrating generative artificial intelligence (GenAI) tools in a controlled environment to encourage responsible experimentation. Interactive notebooks, automated code submission platforms, and instant feedback systems are used. Teaching is problem-based, relying on real biomedical datasets and computational simulations. Oral defense of projects ensures authorship and fosters scientific communication and critical thinking skills. Independent study is supported through multimodal tutorials and specialized digital tools.
-
References
References
Haddock, S. H., & Dunn, C. W. (2011). Practical Computing for Biologists. Sinauer Associates. McKinney, W. (2012). Python for Data Analysis. O'Reilly Media, Inc. Mount, D. W. (2004). Bioinformatics: Sequence and Genome Analysis. Cold Spring Harbor Laboratory Press. Herlihy, M., & Shavit, N. (2008). The Art of Multiprocessor Programming. Morgan Kaufmann.
-
Office Hours
Office Hours
-
Mobility
Mobility
No