Python og Unix for bioinformatikere
Overordnede kursusmål
Den studerende skal være i stand til at skrive Python programmer i et Unix miljø for at løse mindre bioinformatiske opgaver på struktureret vis, f.eks. i forbindelse med projektarbejde. Det er vigtigt mål at lære den studerende, hvordan man tænker omkring programmering.
See course description in English
Læringsmål
- Anvende Unix kommandoline med 10-15 almindelige Unix kommandoer, inklusiv filsystem navigation og pipelines.
- Demonstrere og forklare anvendelsen af Python syntaks, objekt model, datastrukturer og 65-70 Python funktioner/metoder.
- Udøve mønstergenkendelse i (bioinformatiske) data filer med henblik på at udtrække information.
- Anvende metoder/programmmeringsteknikker demonstreret i kurset på lignende problemer.
- Analysere et (programmerings)problem og fastslå dets komponenter.
- Konstruere en effektiv løsning til et problem ved at anvende de rigtige komponenter i den rigtige rækkefølge.
- Analysere et program og baseret på dets opførsel, finde og udrydde fejl.
- Evaluere effektiviteten af kode med hensyn til hastighed og hukommelsesforbrug ved anvendelse af Big O notationen.
- Skrive klar, præcis og veldokumenteret kode, som er anvendelig i større samarbejdsmæssige sammenhæng.
- Evaluere kvaliteten af kode baseret på kriteria vist i kurset.
Kursusindhold
Dette kursus giver en introduktion til elementær Unix og programmeringssproget Python, og følger basale programmeringsprincipper og god programmeringspraksis. Unix introduktionen dækker basale kommandoer, filmanipulation og input/output redirection. I Python dækkes forskellige løkke- og kontrolstrukturer, indbyggede data- og tabeltyper (lists og dictionaries), regulære udtryk og avancerede datastrukturer. Som et eksempel er almindelige bioinformatiske filformater parset og manipuleret. En stor del af kurset er brugt på peer-evaluerede computerøvelser, som er integreret med forelæsningerne. De studerende skal i tomandsgrupper løse et mindre programmeringsprojekt under kurset, eventuelt et projekt de selv designer. Individuelle bidrag til projektet skal angives for at muliggøre individuel karaktergivning. En studerende skal også peer-evaluere en anden gruppes projekt.
Undervisningsform
Forelæsninger og computerøvelser
Fakultet
Bemærkninger
Omgængere kan genbruge tidligere godkendte øvelser og projekt.