I kursen behandlas och tränas programmering och programmeringsmetodik på grundläggande nivå. De imperativa och objektorienterade paradigmen gås igenom med hjälp av programspråken C och Java.
Kursen omfattar fyra moment
1. Teoridel imperativ programmering, 4,5 hp
Programmeringsmetodik: Programmering som problemlösning. Problemspecifikation. Strukturering av program och data, stegvis förfining, modularisering, abstraktionsnivåer. Testning, avlusning, verifiering. Dokumentation och underhåll. Programmeringsstil och program kvalitet.
Programmering i ett imperativt språk: Tilldelning. Grundläggande kontrollstrukturer (sekvens, val, iteration). Procedurer och funktioner, parameteröverföring. Enkla och sammansatta datatyper. Rekursion
2. Laborationsdel imperativ programmering, 3 hp
Delmomentet utgörs av en laborationskurs med ett antal obligatoriska inlämningsuppgifter.
3. Teoridel objektorienterad programmering, 4,5 hp
Programmering i ett objektorienterat språk: Objekt och klasser. Nedärvning. Meddelanden och metoder. Polymorfi.
Grundläggande datalogi: Grundläggande abstrakta datatyper (lista, stack, kö, array, träd, mängd, tabell, graf). Konstruktioner och implementationer. Användnings-områden. Algoritmer. Grundläggande algoritmer, deras komplexitet och karakteristiska egenskaper för typiska problem.
4. Laborationsdel objektorienterad programmering, 3 hp
Delmomentet utgörs av en laborationskurs med ett antal obligatoriska inlämningsuppgifter.
Förväntade studieresultat
Efter avslutad kurs ska studenten kunna:
skriva och testa småskaliga program i programspråken C och Java
förstå och använda sig av variabler, fält, uttryck, kontrollstrukturer, funktioner och metoder
beskriva grundläggande algoritmer, deras komplexitet och karakteristiska egenskaper för typiska problem
förklara hur data representeras i en dator och känna till datatypernas begränsningar
välja och använda sig av strukturerade datatyper som arrayer, strängar, strukturer, lista, stack, kö, träd, mängd, tabell, graf
använda sig av statisk och dynamisk minnesallokering
redogöra för och tillämpa grundläggande objektorienterade begrepp
utforma en lösning baserad på objektorienterade principer
använda sig av programmeringsverktyg
förklara och beskriva program i skriftlig dokumentation
Behörighetskrav
För tillträde till kursen krävs gymnasiets kurser Sv B, En B, Ma B samt kursen Tänkande som beräkning med inriktning mot kognition, (TDBA69) eller motsvarande kunskaper.
Undervisningens upplägg
Undervisningen bedrivs i form av föreläsningar, arbete i datorlabb och övningar i mindre grupper. Utöver schemalagda aktiviteter krävs även individuellt arbete med materialet.
Examination
Examinationen sker genom skriftlig tentamen och genom obligatoriska datorlaborationer och uppgifter som redovisas muntligt och skriftligt under kursens gång. På de två teoridelarna som examineras genom skriftliga tentamina ges betyget Underkänd (U), Godkänd (G) eller Väl godkänd (VG). På de två laborationsdelarna, som utgörs av övriga obligatoriska moment, ges betyget Underkänd (U) eller Godkänd (G). På kursen ges betyget Underkänd (U), Godkänd (G) eller Väl godkänd (VG). Detta betyg utgör en sammanfattande bedömning av resultatet vid examinationens olika delar och sätts först när alla obligatoriska moment är godkända. Den som godkänts i ett prov får ej undergå förnyat prov för högre betyg.
För studerande som inte godkänns vid ordinarie provtillfälle anordnas ytterligare provtillfälle.
En student som utan godkänt resultat har genomgått två prov för en kurs eller en del av en kurs, har rätt att få en annan examinator utsedd, om inte särskilda skäl talar emot det (HF 6 kap. 22 §). Begäran om ny examinator ställs till styrelsen för Institutionen för datavetenskap.
Tillgodoräknande
I en examen får denna kurs ej ingå, helt eller delvis, samtidigt med en annan kurs med likartat innehåll. Vid tveksamheter bör den studerande rådfråga studievägledare vid Institutionen för datavetenskap.
Litteratur
Litteraturlistan är inte tillgänglig via den webbaserade utbildningskatalogen.
Kontakta aktuell institution.