DS830: Introduktion til programmering
Kommentar
Indgangskrav
Kurset kan ikke tages af kandidatstuderende på datalogi. Kurset kan ikke følges hvis DM574, DM550, DM562, DM536,
DM857, DS831, DS801 eller MM560 er bestået, eller indgår obligatorisk i din studieordning.
Faglige forudsætninger
Formål
Kurset giver en introduktion til struktureret og objekt-orienteret programmering. Kurset giver et videnskabeligt grundlag for at løse problemer ved modellering og implementering af edb-programmer.
I forhold til uddannelsens læringsresultater har kurset eksplicit fokus på:
- at give kompetence til at planlægge og udføre computerprogrammer
- viden om fælles programmering metoder
- udvikling af færdigheder i at programmere i flere typer programmeringssprog
- udvikling af færdigheder i softwareudvikling
- udvikling af færdigheder i at konstruere større softwaresystemer
- udvikling af færdigheder i at træffe og begrunde fagligt relaterede beslutninger
- udvikling af færdigheder i at beskrive, formulere og formidle problemstillinger og resultater til enten fagfæller og ikke-specialister eller samarbejdspartnere og brugere
- at give kompetence i at håndtere komplekse og udviklingsorienterede situationer i studie- og arbejdssammenhænge
- at give kompetence i at identificere egne læringsbehov og strukturere egen læring i forskellige læringsmiljøer
- at give kompetence til at designe højere niveau software arkitekturer
Målbeskrivelse
For at opnå kursets formål er det læringsmålet for kurset, at den studerende demonstrerer evnen til at:
- designe modeller for konkrete problemer.
- udarbejde en programstruktur baseret på modellen.
- implementere det planlagte program i det konkret anvendte programmeringssprog.
- finde og bruge egnede elementer i det til sproget hørende programbibliotek.
- planlægge og gennemføre en afprøvning af programmet.
- designe og implementere rekursiv løsning af problemer.
- designe og implementere abstrakte datatyper.
- anvende basale træstrukturer og algoritmer for disse.
Indhold
Kurset indeholder følgende faglige hovedområder:
- De basale struktureringsredskaber sekvens, gentagelse, betinget instruktion og procedure.
- Fundamentale datastrukturer som lister, maps, træer.
- Struktureretprogrammeringsteknik, herunder eksempler og anvendelser.
- Rekursion og rekursive datastrukturer.
- Eksempler på abstrakte datatyper og deres realisering.
Kurset undervises i Python.
Litteratur
Eksamensbestemmelser
Eksamenselement a)
Tidsmæssig placering
Udprøvninger
Portfolio med mundtligt forsvar
EKA
Censur
Bedømmelse
Identifikation
Sprog
Hjælpemidler
ECTS-point
Uddybende information
Portfolio eksamen bestående af små individuelle opgaver, et gruppeprojekt og et mundtligt forsvar (med skriftlig rapport og mundligt forsvar).
Det mundtlige forsvar er placeret i eksamensperioden i januar.
Vejledende antal undervisningstimer
Undervisningsform
På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.
- Introfase (forelæsning, holdtimer) - Antal timer: 28
- træningsfase: Antal timer: 38, heraf eksaminatorietimer 28 timer, laboratorieøvelser 10 timer.
I introfasen benyttes en kombination af klassiske forelæsninger, hvor fagets grundbegreber og metoder præsenteres, og mere anvendelsesorienterede forløb, hvor der undervises i hvordan den opnåede viden kan anvendes i konkrete scenarier.
Træningsfasen er opdelt i eksaminatorier og labs, hvor de studerende lærer de kompetencer, der sætter dem i stand til at omsætte deres viden til løsning og efterfølgende til konkrete computerprogrammer.
I studiefasen arbejder de studerende selvstændigt med at øge deres forståelse og deres kompetencer vedrørende fagets indhold. Aktiviteter i studiefasen: Programmering af små opgaver og projekter.
Ansvarlig underviser
Skemaoplysninger
Administrationsenhed
Team hos Uddannelsesjura & Registratur
Udbudssteder
Anbefalede studieforløb
Overgangsordninger
Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.