Programmering 2

Kurskod: PRRPRR02 100 poäng
Kursen Programmering 2 omfattar punkterna 2—10 under rubriken Ämnets syfte, med särskild betoning på punkt 8. Se skolverkets hemsida.

Om upplägget: Denna kursplanering är ett förslag på upplägg där kursen delats in i 5 större delar. Detta till stor del baserat på det centrala innehållet. Likaså har kunskapskraven delats upp och applicerats på de olika delarna. I de flesta fall kan kunskapskraven ganska tydligt kopplas till delar av centrala innehållet medans vissa kunskapskrav återkommer i alla delar. Exempelvis kunskapskrav som planera/analysera/modellera ”i samråd” eller ”efter samråd” finns med i de flesta moment men bör bedömas med större vikt i slutet av kursen.
Tidsangivelsen är ett förslag och kan med fördel justeras efter elevernas intresse och nivå. Kunskapskrav på A-nivå är väldigt svårt att bedöma om uppgifterna i sig är enkla i början.

Kommentarer: Det står tydligt i styrdokumenten att man kan använda mer än ett programmeringsspråk i kursen. Samtidigt finns det inget hindrar att bara använda ett språk. Det råder en viss konsensus i branschen och bland lärare att koncentrera sig på ett språk först.

OBS Kursplaneringarna uppdateras och revideras kontinuerligt. Förslag och synpunkter mottages gärna.

Del 1 – Klasser och objekt

  • Tidsåtgång: ca 25%
  • Centralt innehåll:
    • Grunderna för klasserna, objekt, egenskaper och metoder.
    • Variablers och metoders synlighet och livslängd.
    • Identifierares synlighet och livslängd.
    • Det valda programspråkets kontrollstrukturer.
  • Innehåll:

Kunskapskrav E

Kunskapskrav C

Kunskapskrav A

Eleven analyserar och modellerar enklare uppgifter i samråd med handledare. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en enkel lösning och dokumenterar denna med ett enkelt klassdiagram.

Eleven analyserar och modellerar uppgifter efter samråd med handledare. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en lösning och dokumenterar denna med ett klassdiagram.

Eleven analyserar och modellerar komplexa uppgifter efter 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 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 enkelt kommenterad källkod med tillfredsställande resultat.

Eleven skapar med viss säkerhet enklare program med klasser där arv används. I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och noggrant kommenterad källkod med tillfredsställande resultat.

Eleven skapar med säkerhet enklare program med klasser där arv används i omfattande 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.

Del 2 – Arv och polymorfism

  • Tidsåtgång: ca 25%
  • Centralt innehåll:
    • 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.
    • Variablers och metoders synlighet och livslängd.
    • Identifierares synlighet och livslängd.
    • Design av lämplig lösning ur föregående analys med lämpligt verktyg och metoder som klassdiagram.
  • Innehåll:

Kunskapskrav E

Kunskapskrav C

Kunskapskrav A

Eleven analyserar och modellerar enklare uppgifter i samråd med handledare. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en enkel lösning och dokumenterar denna med ett enkelt klassdiagram.

Eleven analyserar och modellerar uppgifter efter samråd med handledare. Eleven designar med viss säkerhet utifrån den analyserade uppgiften en lösning och dokumenterar denna med ett klassdiagram.

Eleven analyserar och modellerar komplexa uppgifter efter 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 anpassar med viss säkerhet sin planering av programutvecklingsprocessen och utför felsökning av enkla syntaxfel.

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 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 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 enkelt kommenterad källkod med tillfredsställande resultat.

Eleven skapar med viss säkerhet enklare program med klasser där arv används. I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och noggrant kommenterad källkod med tillfredsställande resultat.

Eleven skapar med säkerhet enklare program med klasser där arv används i omfattande 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.

Del 3 – Felhantering & Generiska klassser

  • Tidsåtgång: ca 10%
  • Centralt innehåll:
    • Undantagshantering.
    • Generiska klasser och metoder.
  • Innehåll:

Kunskapskrav E

Kunskapskrav C

Kunskapskrav A

Eleven använder med viss säkerhet någon generisk klass.

Eleven använder med viss säkerhet några generiska klasser

Eleven använder med säkerhet flera generiska klasser.

Del 4 – Nätverksprogrammering

  • Tidsåtgång: ca 10%
  • Centralt innehåll:
    • Utveckling av program som nyttjar kommunikation över internet.
    • Skrivning och läsning av lagrad data.
    • Undantagshantering.
  • Innehåll:

Kunskapskrav E

Kunskapskrav C

Kunskapskrav A

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

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

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

Kommentar: Det finns två olika sätt att uppnå ”kommunikation över internet”. Den kanske vanligaste idag är att använda så kallad ”öppen data” via webbtjänster på nätet (XML & JSON). Ett annat alternativ är att utveckla helt egen kommunikation mellan t.ex. en server och en klient i t.ex. ett spel eller ett chatt-program. Som du kanske ser i innehållet ovan så finns båda grenar representerade. Beroende på grupp och/eller tid så kan man koncentrera sig mer på en av inriktningarna.

Del 5 – Avslutande projekt

  • Tidsåtgång: ca 20%
  • Centralt innehåll, möjlighet till allt beroende på inriktning men kanske främst:
    • 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.

Kunskapskrav E

Kunskapskrav C

Kunskapskrav A

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 enkla omdömen programmets prestanda och ändamålsenlighet i någon situation och i något sammanhang.

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. Innan programutvecklingen avslutas utvärderar eleven med nyanserade omdömen programmets prestanda och ändamålsenlighet i några situationer och sammanhang.

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. 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.

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 enkelt kommenterad källkod med tillfredsställande resultat.

Eleven skapar med viss säkerhet enklare program med klasser där arv används. I sin programmering skriver eleven med konsekvent kodningsstil och tydlig namngivning en korrekt, strukturerad och noggrant kommenterad källkod med tillfredsställande resultat.

Eleven skapar med säkerhet enklare program med klasser där arv används i omfattande 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.

Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då med viss säkerhet datavetenskapliga begrepp.

Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då med viss säkerhet datavetenskapliga begrepp.

Eleven kommunicerar om programutvecklingen och dess utvärdering och använder då med säkerhetdatavetenskapliga begrepp.

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.

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 god kvalitet i ett eller flera programspråk och innehåller objektorienterad programmering som är stabil och robust i program av komplex karaktär.

Kommentar: Ett avslutande projekt bör ju såklart täcka in det mesta av innehållet i kursen. Därmed ingår också de flesta kunskapskrav ännu en gång.

Det kan vara bra att ha flera tillfällen då eleven kan visa sin kunskap och förhoppningsvis på en högre nivå efter varje tillfälle.

I det avslutande projektet så passar det bra att ha med en presentation och utvärdering som eleven gör. Dokumentation så som klassdiagram, kommenterad kod och övrig dokumentation kan redovisas. Utöver en presentation inför övriga elever så bör man också säkerställa via enskilda samtal att eleven kan redovisa sin kod, design och huruvida ”produkten” är tillfredsställande eller god och om OOP är ”stabil och robust”.

Del X – Extramaterial

Vi har lämnat 10% över till att fylla med saker som kanske passar den aktuella undervisningsgruppen. Här kan också finnas uppslag att hämta under hela kursen.

  • Tidsåtgång: ca 10%
  • Centralt innehåll:
    • 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.
Scroll to top