PROG1003
Objektorientert programmering
Vår
Gjøvik
Norsk
Om emnet
Faglig innhold
Prinsippene i objekt-orientering Innføring i språkmekanismer i C++: - Klasser og objekter - Constructors / Destructors - Arv - Virtuelle funksjoner / polymorfisme / sen binding - Pekere - new / delete - Dynamisk allokering - Parameteroverføring (ved verdi/referanse) - C++ strings - Funksjonspekere (C-style og C++ style) Bruk av biblioteksfunksjoner: - C++ containers: lists, arrays, maps - C++ standard algoritmer: f.eks. sort Annet: - Verktøy for versjonskontroll - Større program/prosjekt (applikasjon) bestående av flere filer - Kodeanalyse (vha. verktøy) og testing (skjemautfylling) - Dokumentasjon / kommentering
Læringsmål
Kunnskap:
- kjenner til prinsippene innen objektorientert programmering
- har kunnskap om når og hvordan en bør organisere kildekode i klasser
- har kunnskap om alternative programmeringsparadigmer til objektorientert programmering
- kjenner til kvalitets- og sikkerhetsaspekter ved utvikling og vedlikehold av programvare
Ferdigheter:
- kan organisere kildekode i en eller flere klasser, og dra nytte av de valgte strukturene
- kan ved behov reorganisere klassestrukturer i programvare for å lette vedlikehold og videreutvikling
- kan dra nytte av utviklingsteknikker relatert til objektorientert programmering og andre relevante programmeringsparadigmer
- kan bruke verktøy for versjonskontroll og kodeanalyse, samt utføre tester av kildekode
Generell kompetanse:
- kan estimere kompleksitet og identifisere ressursbehov til nye utviklingsprosjekt
- kan planlegge og bygge større programvareløsninger der funksjonalitet og data er fordelt på en slik måte at vedlikehold og videreutvikling av programvaren blir mindre ressurskrevende
- kan jobbe sammen med, og dra nytte av, andre utviklere i et utviklingsprosjekt
Læringsformer og aktiviteter
- Forelesninger
- Obligatoriske oppgaver
- Oppgaveløsning
- Prosjektarbeid
Obligatoriske arbeidskrav: Minst 2 av 3 obliger pluss prosjektoppgave må være godkjent. Klart mangelfullt arbeid, ikke selvstendig eget arbeid eller innleveringsfrist som ikke overholdes regnes som ikke-levert. Det obligatoriske arbeidet må være fullført/godkjent for å få delta på prosjektet.