INF205 Ressurseffektiv programmering

Studiepoeng:5

Ansvarlig fakultet:Fakultet for realfag og teknologi

Emneansvarlig:Martin Thomas Horsch

Campus / nettbasert:Undervises campus Ås

Undervisningens språk:Norsk

Frekvens:Årlig (vårsemester, første halvdel)

Forventet arbeidsmengde:125t = 24t forelesninger + 12t datalab + 89t selvstendig arbeid

Undervisnings- og vurderingsperiode:Emnet blir tilbudt i vårparallellen. Emnet har undervisning/vurdering heilt gjennom den første halvdelen av vårparallellen.

Om dette emnet

Emnet gir ei innføring i programmering i eit kompilert programmeringsspråk med eksplisitt minnehandtering, med fokus på effektiv bruk av rekneressursar (CPU-tid og minne). Emnet er tenkt for studentar med programmeringserfaring i eit høgnivåspråk (t.d., Python). Konkrete tema er:

  • C++ som moderne programmeringsspråk
  • Kompilering og bygging av prosjekt
  • Peikarar (pointers), minneallokering og deallokering
  • Bruk av C++-standardbiblioteket
  • Generisk programmering med templates
  • Implementering av konteinardatatypar
  • Programmering og berekraft

Tilknytting til ROS (t.e., for innbygde system)

Dette lærer du

Når du har fullført emnet, kan du

  • implementere algoritmar i moderne C++
  • handtere minne på ein trygg måte
  • bruke C++-standardbiblioteket og tredjepartsbibliotek
  • implementere datatypar frå botnen av
  • utvikle kode tilpassa innebygde system
  • vurdere program og deira bruk med tanke på berekraftsmetrikkar

laga grensesnitt slik at koden kan samvirke med andre programvarer

  • Forelesninger, datalab og programmeringsoppgaver.
  • Emnerom i Canvas, støtte i datalab, offentlig nettside til kurset (home.bawue.de/~horsch/teaching/inf205/), m.m.
  • B. Stroustrup, A Tour of C++, 3. utg., Pearson Education (ISBN 978-0-13-681648-5), 2023.
  • INF120 eller tilsvarende
  • Mappevurdering. A-F.

    Programmeringsprosjekt

    Karakterregel: Bokstavkarakterer

  • Sensor(ene) gjennomfører mappevurderinga.
  • Utover det som inngår i mappevurderinga skal hver student presentere minst éi øvingsoppgave under datalab-timene.
  • 24t forelesninger, 12t datalab
  • REALFAG