Emnekode
PG330
Emnenavn
Programmering i C++
Studiepoeng
10,00
Emneansvarlig
Tomas Sandnes
Tilsynssensor
Kjetil Svarstad, NTNU
Godkjenningsdato
Hensikt
Emnet skal gi studentene kunnskap om fundamentale programmeringsbegreper i språket C++, objektorientert programmering, samt noen videregående temaer.
Etter fullført emne vil studentene være i stand til å lage programmer i C++, inklusive spill, med output til console eller vinduer/2D gjennom 3. parts bibliotek. De vil beherske Microsoft Visual Studio som IDE.
MERK, til studenter som vurderer dette som valgfag: C++ kompetansen man opparbeider seg er helt i tråd med generell C++ kompetanse fra andre batchelor studier. Men da dette er et kjernefag for spillprogrammerer programmet er eksempler, øvingsoppgaver og innleveringer svært spillorienterte.
Forutsetninger
Emnet bygger på grunnleggende ferdigheter i objektorientert programmering med utgangspunkt i programmeringsspråket Java.
Forelesninger, øvingsoppgaver og innleveringer tar utgangspunkt i at studentene bruker Microsoft Visual Studio. Studenter som velger et annet programmeringsverktøy kan ikke forvente hjelp med programvaren. Innleveringer skal uansett kunne kompilere og kjøre i Visual Studio.
Kompetansemål
- Med dette emnet skal studentene få en innføring i C++, og et grunnlag for å kunne gå videre med mer avanserte C++ (spill)programmeringsemner. Studentene skal kunne:
- beherske Visual Studio som C++ programmeringsmiljø (opprette projects, kompilere, linke, kjøre)
- beherske standard IO
- programmere med bruk av variabler, aritmetiske operatorer, løkker, valgsetninger
- bruke arrays
- deklarere funksjoner/metoder og bruke disse med og uten ulike typer parametere
- forstå og kunne korrekt anvende referanser og pekere
- beherske objektorientert tankegang med bruk av klasser, objekter, arv og polymorfi
- benytte operator-overlasting på en effektiv måte
- programmere fil input/output
- beherske feilhåndtering
- forstå og bruke ulike tallsystemer og bit-operasjoner
- bruke templates
- benytte funksjonalitet fra 3. parts libraries/dlls (f.eks. for 2D grafikk håndtering)
Gjennomføring
Forelesninger og øvinger, til sammen 5 timer/uke.
Mappen består av 2 gruppeinnleveringer (1 med console output, en med vindu + 2D output) underveis i semesteret, og en individuell 3 timers avsluttende prøve. Mappen vurderes som en helhet, ikke med spesifisert vekting per element.
Pensum
Se litteraturliste, under.
Karakterskala
Bokstavkarakter / Letter grade
Vitnemålstekst
Faget har gitt studenten ferdigheter i å programmere i C++, med vekt på objektorienterte emner som arv og polymorfi, samt bruk av referanser, pekere og overlasting av operatorer. Videre har studenten lært å mestre enkel filbehandling, samt lært å benytte 3. parts libraries/dlls. Det har blitt gitt en innføring i bruk av Microsoft Visual Studio som utviklingsverktøy.