Kursplan för Informationssystem C: Objektorienterad programmering II
Information Systems C: Object-Oriented Programming II
Kursplan
- 7,5 högskolepoäng
- Kurskod: 2IS062
- Utbildningsnivå: Grundnivå
-
Huvudområde(n) och successiv fördjupning:
Informationssystem G2F
Förklaring av koder
Koden visar kursens utbildningsnivå och fördjupning i förhållande till andra kurser inom huvudområdet och examensfordringarna för generella examina:
Grundnivå
- G1N: har endast gymnasiala förkunskapskrav
- G1F: har mindre än 60 hp kurs/er på grundnivå som förkunskapskrav
- G1E: innehåller särskilt utformat examensarbete för högskoleexamen
- G2F: har minst 60 hp kurs/er på grundnivå som förkunskapskrav
- G2E: har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen
- GXX: kursens fördjupning kan inte klassificeras
Avancerad nivå
- A1N: har endast kurs/er på grundnivå som förkunskapskrav
- A1F: har kurs/er på avancerad nivå som förkunskapskrav
- A1E: innehåller examensarbete för magisterexamen
- A2E: innehåller examensarbete för masterexamen
- AXX: kursens fördjupning kan inte klassificeras
- Betygsskala: Underkänd (U), godkänd (G), väl godkänd (VG)
- Inrättad: 2018-02-08
- Inrättad av: Institutionsstyrelsen
- Reviderad: 2019-01-24
- Reviderad av: Institutionsstyrelsen
- Gäller från: HT 2019
-
Behörighet:
52,5 hp informationssystem eller motsvarande inklusive 7,5 hp objektorienterad programmering.
- Ansvarig institution: Institutionen för informatik och media
Mål
Vad gäller kunskap och förståelse förväntas studenten efter genomgången kurs kunna:
* förklara centrala begrepp inom händelsedriven programmering,
* förklara hur designmönster används för att tilldela ansvar till mjukvaruobjekt,
* förklara avancerade objektorienterade tekniker.
Vad gäller färdighet och förmåga förväntas studenten efter genomgången kurs kunna:
* utveckla avancerade objektorienterade program,
* tillämpa händelsedriven programmering vid objektorienterad programmering,
* tillämpa designmönster inom programutveckling.
* tillämpa Object Relational Mapping (ORM).
Vad gäller värderingsförmåga och förhållningssätt förväntas studenten efter genomgången kurs kunna:
* utvärdera ansvarsfördelande designmönsters tillämplighet i en given domän,
* bedöma olika programmeringsparadigmers lämplighet vid programutveckling,
* utvärdera mjukvaruobjekts beroendeförhållanden och utnyttja injektion av beroenden (s.k. dependency injection).
Innehåll
Kursens bygger vidare på kursen Objektorienterad Programmering I (OOP I) och fokuserar på mer avancerade objektorienterade koncept såsom händelsedriven programmering, abstrahering med hjälp av tekniken ORM (object relational mapping) och generiska datatyper. Kursen inleds med en återkoppling till OOP I och de grundläggande objektorienterade koncept som behandlas där och övergår sedan till tillämpning av händelsedriven programmering och generiska datatyper. Vidare diskuteras abstraktionsnivåer och mjukvaruberoenden, exempelvis genom tillämpningar av information hiding genom interfaces och designmönstret dependency injection. Därtill avhandlas objektorienterad modellering och design med särskild vikt på designmönster för ansvarsfördelning mellan mjukvaruobjekt (General Responsibility Assignment Software Pattens, GRASP).
Undervisning
Föreläsningar och laborationer.
Examination
Kursen examineras genom inlämningsuppgifter och tentamen.
Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en student examineras på annat sätt. Särskilda skäl kan t.ex. vara besked om särskilt pedagogiskt stöd från universitetets samordnare eller beslut om undantag som fattats av institutionens arbetsgrupp för studieärenden.
Versioner av kursplanen
- Senaste kursplan (giltig från HT 2019, version 2)
- Äldre kursplan (giltig från HT 2019, version 1)
- Äldre kursplan (giltig från HT 2018)
Litteratur
Litteraturlista
Det finns en senare version av litteraturlistan.
Gäller från: HT 2021
I bibliotekets söktjänst kan du se om en titel finns elektroniskt.
-
Mark Michaelis,
"Essential C# 8.0, 7th Edition" [Elektronisk resurs]
2020
Obligatorisk
Versioner av litteraturlistan
- Senaste litteraturlista (giltig från HT 2022)
- Äldre litteraturlista (giltig från HT 2021)
- Äldre litteraturlista (giltig från HT 2019)