Kunskapskrav

Start Sök Om

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.

Kurser i ämnet

  1. Programmering 1, 100 poäng.
  2. Programmering 2, 100 poäng, som bygger på kursen programmering 1.
  3. Programmering 3, 100 poäng. Kursen får bara anordnas i vidareutbildning i form av ett fjärde tekniskt år i gymnasieskolan.

Programmering 2

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

Betyget A Betyget C Betyget E
Eleven formulerar och planerar efter samråd med handledare programmeringsuppgifter och väljer med säkerhet lämpliga programspråk. Eleven formulerar och planerar efter samråd med handledare programmeringsuppgifter och väljer med viss säkerhet lämpliga programspråk. Eleven formulerar och planerar i samråd med handledare programmeringsuppgifter och väljer med viss säkerhet lämpliga programspråk.
Eleven analyserar och modellerar komplexa uppgifter efter samråd med handledare. Eleven analyserar och modellerar uppgifter efter samråd med handledare. Eleven analyserar och modellerar enklare uppgifter i samråd med handledare.
Eleven designar med säkerhet utifrån den analyserade uppgiften en komplex lösning och dokumenterar denna med ett avancerat klassdiagram. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en lösning och dokumenterar denna med ett klassdiagram. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en enkel lösning och dokumenterar denna med ett enkelt klassdiagram.
Eleven väljer med säkerhet ett uttryckssätt och ett gränssnitt som är anpassat för att på ett gott sätt interagera med den avsedda användaren. - Eleven väljer med viss säkerhet ett uttryckssätt och ett gränssnitt som är anpassat för att på ett tillfredsställande sätt interagera med den avsedda användaren.
Eleven skapar någon genomarbetad lösning där programmet kommunicerar över internet. Eleven skapar någon lösning där programmet kommunicerar över internet. Eleven skapar någon enkel lösning där programmet kommunicerar över internet.
Eleven skapar med säkerhet enklare program med klasser där arv används i omfattande utsträckning. Eleven skapar med viss säkerhet enklare program med klasser där arv används. Eleven skapar med viss säkerhet enklare program med klasser där arv används i begränsad utsträckning.
I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och noggrant och utförligt kommenterad källkod med gott resultat. I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och noggrant kommenterad källkod med tillfredsställande resultat. I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och enkelt kommenterad källkod med tillfredsställande resultat.
Eleven använder med säkerhet flera generiska klasser. Eleven använder med viss säkerhet några generiska klasser. Eleven använder med viss säkerhet någon generisk klass.
Produkten är av god kvalitet i ett eller flera programspråk och innehåller objektorienterad programmering som är stabil och robust i program av komplex karaktär. Produkten är av tillfredsställande kvalitet i ett eller flera programspråk och innehåller objektorienterad programmering som är stabil och robust. Produkten är av tillfredsställande kvalitet i ett eller flera programspråk och innehåller objektorienterad programmering som är stabil och robust i program av enkel karaktär.
Eleven anpassar med säkerhet sin planering av programutvecklingsprocessen, anpassar polymorfi och utför på ett systematiskt och effektivt sätt felsökning av syntaxfel, körtidsfel och programmeringslogiska fel. Eleven anpassar med viss säkerhet sin planering av programutvecklingsprocessen och utför på ett systematiskt sätt felsökning av syntaxfel, körtidsfel och programmeringslogiska fel. Eleven anpassar med viss säkerhet sin planering av programutvecklingsprocessen och utför felsökning av enkla syntaxfel.
Innan programutvecklingen avslutas utvärderar eleven med nyanserade omdömen och ger förslag på förbättringar av programmets prestanda och ändamålsenlighet i flera situationer och sammanhang. Innan programutvecklingen avslutas utvärderar eleven med nyanserade omdömen programmets prestanda och ändamålsenlighet i några situationer och sammanhang. Innan programutvecklingen avslutas utvärderar eleven med enkla omdömen programmets prestanda och ändamålsenlighet i någon situation och i något sammanhang.
Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då med säkerhet datavetenskapliga begrepp. - Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då med viss säkerhet datavetenskapliga begrepp.
Gå till Samtliga gymnasieämnen på skolverkets hemsida för att hitta fullständig information.