DM552: Programmeringssprog

Det Naturvidenskabelige Studienævn

Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N330038102
Censur: Intern prøve, to eller flere bedømmere
Bedømmelse: 7-trinsskala
Udbudssteder: Odense
Udbudsterminer: Forår
Niveau: Bachelor

STADS ID (UVA): N330038101
ECTS-point: 10

Godkendelsesdato: 02-10-2019


Varighed: 1 semester

Version: Arkiv

Kommentar

Denne kursusbeskrivelse afløster 15014801 (tidligere UVA).

Indgangskrav

Ingen

Faglige forudsætninger

Stoffet fra DM550 Introduktion til programmering skal være kendt. DM507 Algoritmer og Datastrukturer anbefales.

Formål

Kurset giver en introduktion til de vigtigste begreber og strukturen i programmeringssprog, med særligt fokus på det funktionelle paradigme. De studerende får mulighed for at lære de generelle principper for programmeringssprogdesign og de specifikke valg der kendetegner sprogparadigmerne. De vil udvikle en samlet forståelse af fordele og ulemper ved forskellige niveauer af abstraktion og programmeringssprogkonstruktioner, og samtidig opnå erfaring med programmering i andre sprog end mainstream objektorienterede sprog.

Kurset bygger på den viden, der er opnået i kurserne DM550 Introduktion til Programmering og DM507 Algoritmer og Datastrukturer. Det giver et fagligt grundlag for valg af kurser eller bachelorprojekter i programmeringssprog senere i uddannelsen.

I forhold til uddannelsens læringsresultater har kurset et eksplicit fokus på at:

  • udvikle færdigheder i programmering i forskellige typer programmeringssprog
  • udvikle færdigheder i at analysere fordele og ulemper ved forskellige sprogkonstruktioner
  • udvikle færdigheder i at beslutte og begrunde professionelle beslutninger
  • at give kompetence til at identificere ens eget behov for at lære og strukturere sin egen læring i forskellige læringsmiljøer


Målbeskrivelse

Kursets læringsmål er, at den studerende demonstrerer evnen til at:

  • identificere og beskrive de vigtigste egenskaber ved og strukturer i et programmeringssprog
  • skelne og udvikle enkle programmer i de vigtigste programmeringsparadigmer
  • løse ikke-trivielle programmeringsopgaver i et funktionelt programmeringssprog ved at skrive klar og korrekt kode

Indhold

Følgende hovedemner er indeholdt i kurset:

  • Scope-regler
  • Stack of activation records
  • Heap, Memory management
  • Sequence control, procedurer, rekursion
  • Typer, Parametre, Exceptions
  • Funktionssprog: højere orden, polymorfisme, lister, lazy evaluation

Litteratur

Se BlackBoard for pensumlister og yderligere litteraturhenvisninger.

Eksamensbestemmelser

Eksamenselement a)

Tidsmæssig placering

Forår

Udprøvninger

Portfolio

EKA

N330038102

Censur

Intern prøve, to eller flere bedømmere

Bedømmelse

7-trinsskala

Identifikation

Fulde navn og SDU brugernavn

Sprog

Følger, som udgangspunkt, undervisningssprog

Hjælpemidler

Ikke tillladt, nærmere beskrivelse af eksamensreglerne vil blive offentliggjort under 'Course Information' på kursets side i BlackBoard.

ECTS-point

10

Uddybende information

Eksamen består i aflevering af programmeringsopgaver løbende gennem semestret samt en afsluttende skriftlig eksamen. Bedømmelse afgives på baggrund af en overordnet vurdering af såvel opgaver som den skriftlige eksamen.

Eksamensformen ved reeksamen kan være en anden end eksamensformen ved den ordinære eksamen.

Vejledende antal undervisningstimer

82 timer per semester

Undervisningsform

På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.

  • Introfase (forelæsning, holdtimer) - 40 timer
  • træningsfase: 42 timer, heraf 28 timer eksaminatorier og 14 laboratorie

Aktiviteter i studeifasen:

  • Programmering og små projekter.

Ansvarlig underviser

Navn E-mail Institut
Jacopo Mauro mauro@imada.sdu.dk Institut for Matematik og Datalogi

Skemaoplysninger

Administrationsenhed

Institut for Matematik og Datalogi (datalogi)

Team hos Uddannelsesjura & Registratur

NAT

Udbudssteder

Odense

Anbefalede studieforløb