Skolverkets kursdokument

Ämne - Programmering

Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.


Ämnets syfte

Undervisningen i ämnet programmering ska syfta till att eleverna utvecklar kunskaper om programmeringens grunder, färdigheter i att tillämpa relevanta metoder för programutveckling och förmåga att lösa programmeringstekniska problem. Undervisningen ska även bidra till att eleverna utvecklar förmåga att analysera, designa och vidareutveckla program. Undervisningen ska också bidra till att eleverna utvecklar kunskaper om några vanligt förekommande programspråk samt traditioner och nya trender i utvecklingen av programspråk. Dessutom ska undervisningen leda till att eleverna utvecklar kunskaper om datorns användning i samhället och datorns möjligheter och begränsningar.

I undervisningen ska eleverna ges möjlighet att arbeta i projekt och att enskilt eller i grupp utföra programmeringsuppgifter av varierande komplexitet och inom olika tillämpningsområden.

Undervisningen i ämnet programmering ska ge eleverna förutsättningar att utveckla följande:

  1. Kunskaper om programmerbara system.
  2. Förmåga att formulera och planera programmeringsuppgifter med pseudokod och diagramteknik.
  3. Förståelse av och färdigheter i att använda datavetenskapliga begrepp och principer.
  4. Kunskaper om programspråk och programmeringsparadigm.
  5. Förmåga att skriva, läsa, strukturera, analysera, dokumentera och kommentera programkod.
  6. Färdigheter i att skapa program med ett givet syfte och för en avsedd användare.
  7. Kunskaper om gränssnitt mot filer, filsystem, databashanterare och internet.
  8. Kunskaper om och färdigheter i objektorienterad programmering.
  9. Förmåga att finna, analysera, åtgärda och förhindra syntaxfel, programkörningsfel och programmeringslogiska fel.
  10. Kunskaper om samspelet mellan program, exekveringsmiljö, operativsystem och hårdvara.

Programmering 2, 100p

Kurskod: PRRPRR02

Kursen programmering 2 omfattar punkterna 2—10 under rubriken Ämnets syfte, med särskild betoning på punkt 8.

Centralt innehåll

Undervisningen i kursen ska behandla följande centrala innehåll:

  • Grunderna för klasserna, objekt, egenskaper och metoder.
  • Arv, inkapsling och polymorfism.
  • Skapande av klasser och objekt i ett objektorienterat programspråk utifrån tidigare analys och design.
  • Användning av klasser och att genom arv förändra beteende hos klasser som ingår i egna och andras klasshierarkier och standardbibliotek.
  • Generiska klasser och metoder.
  • Variablers och metoders synlighet och livslängd.
  • Stark och svag samt statisk och dynamisk typning.
  • Identifierares synlighet och livslängd.
  • Det valda programspråkets kontrollstrukturer.
  • Undantagshantering.
  • Analys, nedbrytning och modellering av programmeringstekniska problem med lämpligt analysverktyg, till exempel användningsfall.
  • Design av lämplig lösning ur föregående analys med lämpligt verktyg och metoder som klassdiagram.
  • Skapande av användarvänliga gränssnitt.
  • Skrivning och läsning av lagrad data.
  • Utveckling av program som nyttjar kommunikation över internet.

Kunskapskrav

Kunskapskrav

Text

Betyget E

Betyget C

Betyget A

1. Planering

Eleven formulerar och planerar [1] med handledare programmeringsuppgifter och väljer [2] lämpliga programspråk.

[1] i samråd

[2] med viss säkerhet

[1] efter samråd

[2] med viss säkerhet

[1] efter samråd

[2] med säkerhet

2. Lösningsdesign

Eleven analyserar och modellerar [3] uppgifter [4] med handledare. Eleven designar [5] utifrån den analyserade uppgiften en [6] lösning och dokumenterar denna med ett [7] klassdiagram.

[3] enklare

[4] i samråd

[5] med viss säkerhet

[6] enkel

[7] enkelt

[3] [inget]

[4] efter samråd

[5] med viss säkerhet

[6] [inget]

[7] [inget]

[3] komplexa

[4] efter samråd

[5] med säkerhet

[6] komplex

[7] avancerat

3. Gränssnitt

Eleven väljer [8] ett uttryckssätt och ett gränssnitt som är anpassat för att på ett [9] sätt interagera med den avsedda användaren.

[8] med viss säkerhet

[9] tillfredsställande

[8] med viss säkerhet

[9] tillfredsställande

[8] med säkerhet

[9] gott

4. Kommunikation

Eleven skapar någon [10] lösning där programmet kommunicerar över internet.

[10] enkel

[10] [inget]

[10] genomarbetad

5. Objektorientering

Eleven skapar [11] enklare program med klasser där arv används [12].

[11] med viss säkerhet

[12] i begränsad utsträckning

[11] med viss säkerhet

[12] [inget]

[11] med säkerhet

[12] i omfattande utsträckning

6. Källkod

I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och [13] kommenterad källkod med [14] resultat.

[13] enkelt

[14] tillfredsställande

[13] noggrant

[14] tillfredsställande

[13] noggrant och utförligt

[14] gott

7. Generiska klasser

Eleven använder [15] generisk klass.

[15] med viss säkerhet någon

[15] med viss säkerhet några

[15] med säkerhet flera

8. Produkten

Produkten är av [16] kvalitet i ett eller flera programspråk och innehåller objektorienterad programmering som är stabil och robust [17].

[16] tillfredsställande

[17] i program av enkel karaktär

[16] tillfredsställande

[17] [inget]

[16] god

[17] i program av komplex karaktär

9. Planering och felsökning

Eleven anpassar [18] sin planering av programutvecklingsprocessen [19] och utför [20] felsökning av [21].

[18] med viss säkerhet

[19] [inget]

[20] [inget]

[21] enkla syntaxfel

[18] med viss säkerhet

[19] [inget]

[20] på ett systematiskt sätt

[21] syntaxfel, körtidsfel och programmeringslogiska fel

[18] med säkerhet

[19] , anpassar polymorfi

[20] på ett systematiskt och effektivt sätt

[21] syntaxfel, körtidsfel och programmeringslogiska fel

10. Utvärdering

Innan programutvecklingen avslutas utvärderar eleven med [22] omdömen [23] programmets prestanda och ändamålsenlighet i [24].

[22] enkla

[23] [inget]

[24] någon situation och något sammanhang

[22] nyanserade

[23] [inget]

[24] några situationer och sammanhang

[22] nyanserade

[23] och ger förslag på förbättringar

[24] flera situationer och sammanhang

11. Terminologi

Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då [25] datavetenskapliga begrepp.

[25] med viss säkerhet

[25] med viss säkerhet

[25] med säkerhet

Betyget D innebär att kunskapskraven för E och till övervägande del för C är uppfyllda.
Betyget B innebär att kunskapskraven för C och till övervägande del för A är uppfyllda.

Uppdaterad: 2017-08-18, från Skolverket.