INFT2503 - C++ for programmerere

Karakterfordeling

BeståttIkke bestått1033

Semester

Faglig Innhold

Systemprogrammeringsspråk i Unix-lignende systemer som Linux og MacOS, med fokus på spesielt C++. C++ vil bli sammenlignet med andre aktuelle systemprogrammeringsspråk som C og Rust. Systemprogrammeringsspråk er programmeringsspråk spesielt designet for å være ressurseffektive, med bedre utnyttelse av minne, er mer energibesparende og resulterer i raskere kjøretid enn andre programmeringsspråk som Java, Python og JavaScript. Temaer: - Ressurshåndtering i systemprogrammeringsspråk - Mer om objektorientert programmering, for eksempel struct i C, multiple inheritance i C++ og traits i Rust - Feilhåndtering - Kontainere - Funksjonelle algoritmer - Konstante uttrykk og templatmetaprogrammering - Parallellisering og asynkron programmering - Operator overloading

Læringsmål

Kunnskaper Kandidaten kan gjøre rede for: - resource acquisition is initialisation (RAII) - pekere, smarte pekere og referanser - objektorientert programmering i systemprogrammeringsspråk - ulike former for feilhåndtering - konstante uttrykk, templatmetaprogrammering og operator overloading - ulike typer kontainere og funksjonelle algoritmer - fordeler og ulemper ved parallellisering og asynkron programmering Ferdigheter Kandidaten kan: - lage stabile og ressurseffektiv programvare og programvarebiblioteker i C++ - lese og forstå C++ kildekode skrevet av andre - ta i bruk 3. parts biblioteker Generell kompetanse Kandidaten er bedre i stand til å: - gjøre faglig begrunnet valg av programmeringsspråk for gitte problemstillinger - bidra i utviklingen av programvare og programvarebiblioteker som er skrevet i et systemprogrammeringsspråk - tilegne seg ny kunnskap i et fagfelt i kontinuerlig utvikling

Lenker