KURSPLAN
Introduktion till programmering, 9 högskolepoäng
Introduction to Programming, 9 credits
Kursplan för studenter höst 2016
Kurskod: TIPK13
Fastställd av: VD 2013-04-10
Reviderad av: Utbildningschef 2016-02-25
Gäller fr.o.m.: 2016-08-01
Version: 2
Diarienummer:JTH 2016/918-313
Utbildningsnivå: Grundnivå
Utbildningsområde: Tekniska området (95%) och samhällsvetenskapliga området (5%)
Ämnesgrupp: DT1
Fördjupning: G1F
Huvudområde: Datateknik

Lärandemål

Efter genomgången kurs skall studenten

Kunskap och förståelse

- ha kännedom om de vanligast förekommande paradigmen och programmeringsspråken för programutveckling.
- ha kännedom om innebörden av grundläggande koncept såsom: källkod, kompilering, programexekvering och interpreterande programmeringsspråk.
- ha kännedom om olika vanligt förekommande licensformer för öppen/fri mjukvara, samt om vanligt förekommande verktyg för mjukvaruutveckling som använder dessa.
- visa kunskap om hur man kan skriva kod som är möjlig att underhålla på ett enkelt sätt (dokumentering, namngivning av parametrar, ”whitespace”, kommentarer etc.).
- visa förståelse för hur exempel på kod i strukturerad programmering (i ett valt programmeringsspråk) omsätts i praktiken då programmet exekveras.
- visa förståelse för de långsiktiga tekniska, ekonomiska och juridiska konsekvenserna av att använda öppna/fria licenser och mjukvaror.

Färdighet och förmåga

- visa färdighet i hur man tolkar en modell (i form av pseudo-kod eller flödesdiagram) och implementerar modellen i ett valt programmeringsspråk.
- visa färdighet i att hantera funktioner och därigenom förstå hur man programmerar återanvändbara programmoduler.
- visa färdighet i att utveckla enklare program med strukturerad programmering.
- visa förmåga att analysera grundläggande problembeskrivningar (eller kravbeskrivningar) och kunna modellera dessa genom att använda pseudokod och diagram.
- visa förmåga att analysera och därigenom upptäcka grundläggande programmeringsfel i strukturerad programmering.

Innehåll

Kursen ämnar ge studenten grundläggande förståelse för och kunskaper i strukturerad programmering, inklusive modellering, programdesign, och implementation med hjälp av imperativ programmering. Kursen ämnar även ge studenten en kortare introduktion till olika licensformer och andra för programmerare relevanta immaterialrättsliga frågor.
Kursen innehåller följande moment:
- Problemlösningsmetoder
- Grundläggande programmeringsterminologi (kompilering, interpretering, toolchain, pseudokod, flödesdiagram)
- Programstrukturer (sekvens, selektion, iteration)
- Databehandling (variabler, datatyper, vektorer, datastrukturer, strängar, operatorer)
- Funktioner, signaturer och returvärden
- Utvecklingsmiljöer och –verktyg
- Licensiering och IP-frågor

Undervisningsformer

Undervisningen ges i form av föreläsningar, laborationer och individuella projektuppgifter.

Undervisningen bedrivs normalt på svenska men undervisning på engelska kan förekomma.

Förkunskapskrav

Grundläggande behörighet samt genomgången kurs i Datateknisk introduktionskurs, 6 hp (eller motsvarande kunskaper).

Examination och betyg

Kursen bedöms med betygen 5, 4, 3 eller Underkänd.

Kursens slutbetyg utgör en sammanvägning av tentamen och projektarbete
Kursens slutbetyg utfärdas först när samtliga moment godkänts.

Poängregistrering av examinationen för kursen sker enligt följande system:
ExaminationsmomentOmfattningBetyg
Tentamen13 hp5/4/3/U
Projektarbete3 hp5/4/3/U
Laborationer3 hpU/G
1 Betygen i tentamen och projektarbete vägs samman och bestämmer kursens slutbetyg. Slutbetyg utfärdas först när samtliga moment godkänts.

Kurslitteratur

Litteratur

Kurslitteraturen är preliminär fram till en månad före kursstart.
The Art and Science of C, An introduction to Computer Science
Eric S. Roberts
Addison Wesley, Fifth edition 1995
ISBN-10: 0-201-54322-2