Sverige · Skolverket Kursplaner
Gymnasiet 2 Datalogi.
Ämnet datalogi behandlar grundläggande principer för hur datorer och programvara fungerar och är uppbyggda. Undervisningen syftar till att utveckla elevernas förmåga att analysera problem och skapa strukturerade lösningar med hjälp av algoritmer och datastrukturer.

01Algoritmer och problemlösning
Fokus på att förstå, designa och analysera algoritmer för att lösa beräkningsproblem effektivt.
Eleverna introduceras till vad en algoritm är och hur man kan bryta ner komplexa problem i mindre, hanterbara delar. Fokus ligger på pseudokod och flödesscheman.
Genomgång av klassiska algoritmer för sökning och sortering, såsom binärsökning och quicksort. Eleverna jämför deras effektivitet i olika scenarier.
En djupdykning i hur man mäter algoritmers prestanda med hjälp av Big O-notation. Eleverna lär sig analysera tid- och rumskomplexitet.

02Datastrukturer
Undersökning av hur data kan organiseras och lagras i minnet för att optimera åtkomst och modifiering.
Studie av linjära datastrukturer som arrayer och länkade listor. Eleverna undersöker hur data lagras i minnet och hur man itererar över dem.
Introduktion till LIFO- och FIFO-principerna genom stackar och köer. Praktiska tillämpningar som ångra-funktioner och utskriftsköer diskuteras.
Undersökning av icke-linjära datastrukturer som binära sökträd och grafer. Eleverna lär sig om traversering och nätverksrepresentation.

03Programmeringsparadigmer
En översikt över olika sätt att strukturera och tänka kring kod, med fokus på objektorientering och funktionell programmering.
Genomgång av grundpelarna i objektorienterad programmering: inkapsling, arv och polymorfism. Eleverna skapar klasshierarkier för att modellera verkliga system.
Introduktion till funktionell programmering med fokus på rena funktioner och oföränderlig data. Eleverna utforskar högre ordningens funktioner.
Studie av hur program kan reagera på användarinteraktioner och systemhändelser. Fokus på grafiska användargränssnitt (GUI) och asynkronitet.

04Databaser och informationshantering
Hur man designar, bygger och interagerar med databaser för att lagra och hämta information på ett säkert och strukturerat sätt.
Grunderna i relationsdatabaser och hur man ställer frågor med SQL. Eleverna lär sig skapa, läsa, uppdatera och radera data (CRUD).
Hur man designar en databas från grunden med hjälp av ER-diagram och normalisering. Målet är att undvika redundans och bevara dataintegritet.
En översikt av icke-relationella databaser och när de är lämpliga att använda. Eleverna jämför dokumentdatabaser med traditionella SQL-databaser.

05Säkerhet och etik inom datalogi
Kritiska perspektiv på mjukvaruutveckling, inklusive hur man skyddar system och de etiska konsekvenserna av teknik.
Introduktion till hur data skyddas genom kryptering. Eleverna utforskar symmetrisk och asymmetrisk kryptering samt hashfunktioner.
Analys av vanliga säkerhetsbrister i mjukvara, såsom SQL-injektioner och buffer overflows. Eleverna lär sig principer för säker kodning.
Diskussion kring de etiska dilemman som uppstår vid utveckling av algoritmer och artificiell intelligens. Fokus på bias, integritet och ansvar.