EPN

DAVE3605 Effektiv kode med C og C++ Emneplan

Engelsk emnenavn
Efficient C/C++ Coding Techniques
Studieprogram
Bachelorstudium i ingeniørfag - data / Bachelorstudium i informasjonsteknologi / Bachelorstudium i anvendt datateknologi
Omfang
10.0 stp.
Studieår
2022/2023
Timeplan
Emnehistorikk

Innledning

Studentene skal tilegne seg kunnskap og innsikt i utvikling av ressurseffektive programmer, hovedsakelig ved bruk av C++. Emnet vil være et nyttig fundament for studenter som ønsker å skrive ressurskrevende og komplekse programmer, slik som spill, simuleringer og visualisering, eller programmer som skal kjøre i ressursfattige miljøer slik som routere, IP-kameraer og mobile enheter.

Anbefalte forkunnskaper

Bygger på emnene Programmering.

Forkunnskapskrav

Ingen ut over opptakskrav.

Læringsutbytte

Etter å ha gjennomført dette emnet har studenten følgende læringsutbytte, definert som kunnskap, ferdigheter og generell kompetanse.

Kunnskap

Studenten kan:

  • gjøre rede for de viktigste egenskapene ved C og C++
  • forklare forskjellen på statisk, dynamisk og automatisk allokering av minne
  • forklare forskjellen på pekere, referanser og iteratorer
  • forklare hva generisk programmering er
  • gjøre rede for hva designmønstre er og gi eksempler på slike
  • forklare forskjellen på dynamisk og statisk linking

Ferdigheter

Studenten:

  • anvender C og C++ i egne prosjekter
  • lager egne strukter, klasser og operatorer
  • bruker designmønstre, generisk programmering og andre abstraksjoner effektivt
  • produserer et ferdig program i C++, med automatisert installasjonsprosedyre

Generell kompetanse

Studenten:

  • har generell forståelse for utvikling av ressurseffektive programmer
  • kjenner til teknikker for effektivisering av programmer på høyere og lavere abstraksjonsnivå

Arbeids- og undervisningsformer

Forelesninger og praktisk arbeid på lab. Prosjektarbeid i par eller grupper (2-5 studenter).

Arbeidskrav og obligatoriske aktiviteter

Ingen.

Vurdering og eksamen

Mappevurdering med følgende mappekrav:

  • to individuelle oppgaver
  • ett gruppeprosjekt (2-5 studenter)

Hver av de tre mappeinnleveringene består av programkode og en kort rapport på 3-5 sider.

Mappen gis en helhetlig vurdering med én karakter. Alle deler i mappen må vurderes til bestått for at studenten skal kunne få bestått emnet.

Eksamensresultat kan påklages.

Ved ny og utsatt eksamen kan en annen eksamensform også bli benyttet eller en ny oppgave med en ny frist gis. Hvis muntlig eksamen benyttes kan denne ikke påklages.

Hjelpemidler ved eksamen

Alle.

Vurderingsuttrykk

Gradert skala A-F.

Sensorordning

En intern sensor. Ekstern sensor brukes jevnlig.

Emneoverlapp

Emnet er ekvivalent (overlapper 10 studiepoeng) med: LV128A og LV126A.

Ved praktisering av 3-gangers regelen for oppmelding til eksamen teller forsøk brukt i ekvivalente emner.