Planering hösten 2024
Studiematerial
I planeringstabellen nedan ser ni bland annat vilket studiematerial ni behöver studera inför varje veckas labbar och seminarier i TDDE23 och TDDE24. Studiematerialet består av över 20 kapitel där en del kapitel innehåller filmer som kompletterar texten. Materialet innehåller den information ni behöver kunna för att klara kursen. Vanliga frågor kring studiematerialet.
Notera att studiematerialet för seminariespåret Experimentering även används för Diskussion och analys.
Föreläsningar
- Introduktion till Python, vårt första Python-program och lite om hur vi kommer jobba under resten av terminen
- Versionshantering, en introduktion till hur man använder git
- Att arbeta tillsammans med andra, en introduktion till grupparbete, parprogrammering och gruppkontrakt
Labbar
Som ni kan se i tabellen nedan ska man under de första fyra veckorna av TDDE23 göra klart och redovisa/demonstrera ungefär en labb i veckan för att vara i takt. De tre efterföljande veckorna ska användas för labb 5 som är en något större uppgift. Det är dock i allmänhet en bra idé att börja på nästa labb så snart man kan, eftersom alla labbar inte tar exakt lika lång tid.
För TDDE23 har vi också några frivilliga extrauppgifter för de som vill öva mer: extra övningar till de tre första labbarna och övningar i att skapa enklare script.
Labb 6–8 tillhör TDDE24 och bör påbörjas direkt efter tentaperioden. Labb 8 är större än 6 och 7, och bör påbörjas i god tid!
Planering
Start för TDDE23 | |||
Vecka | Förberedelser / studiematerial | Seminarieuppgifter | Labb |
---|---|---|---|
36 |
Komma igång med python-tolken (starta Python, köra Python, Python i Emacs) Matematiska operationer och variabler (heltal, flyttal, sanningsvärden, funktioner) Emacs (layout, konfiguration, modes, kända problem) |
- | Labb 1. Komma igång med programmering. Genomförs enskilt, liksom labb 2-5. |
37 |
Satser och uttryck (enkla satser, sammansatta satser, enkla uttryck, sammansatta uttryck) Selektion (sant och falskt, booleska operatorer, if uttryck, if-sats) Upprepning (range, grundläggande rekursion och iteration) Funktioner (parameterisering, varför en funktion?, vad händer?, parameteröverföring, synlighet (en. scope), skuggning) Listor och strängar (listor, index, slicing, jämförelse, operationer, lagring, teckenkodningar) |
Labb 2. Villkor och upprepning. | |
38 |
Datatyper (typer, dynamisk typning, metoder, objekt) Tupler och dictionaries (tuple, dictionary) Mer om datatyper (muterbarhet, typer av datatyper) Iteration och rekursion (hur tänker man, mallar, olika typer av upprepning) |
Labb 3. Dictionaries och rekursion. | |
39 |
Programmeringspraxis (korrekthet, läsbarhet, namnformatering, kommentarer, radlängd, testbarhet) Hur man programmerar (programutvecklingsprocessen, divide and conquer) Dubbelrekursion (t.ex. rekursion i nästlade listor) |
Labb 4. Mer om rekursion. | |
40 |
Bildbehandling (Introduktion till bildbehandling, opencv) Versionshantering (Versionshantering, git) Externa bibliotek (Moduler, import, bibliotek) |
Labb 5. Bildbehandling. | |
41 |
Funktionell programmering (högre ordningens funktioner, lambda-funktioner, funktioner som utdata, iteratorfunktioner, listbyggare) Funktionell programmering som paradigm (programmeringsparadigm, egenskaper, nackdelar och exempel på funktionell programmering) |
||
42 |
Testning (testningsnivåer, teststrategier, enhetstestning) Undantag (vanliga undantag, undantagshantering, try-except-else-finally, undantagshantering på fler nivåer) |
||
43 | Labbtider för uppsamling |
- |
|
44 – Tentaperiod (inte lov) med möjlighet att jobba ifatt | |||
Start för TDDE24 | |||
Vecka | Förberedelser / studiematerial | Seminarieuppgifter | Labb |
45 |
Programstrukturer, interpretator och kompilator (källkodsanalys) |
Labb 6. Språk och interpretatorer. Genomförs i par. Indelning i par kommer ske under slutet av HT1. | |
46 |
Problemlösning (att lösa problem, algoritmer, lösningsmodeller, top-down, bottom-up, algoritmkomplexitet) Cellulära automater (frivillig läsning, och ingår inte i "en sak i taget") |
||
47 | - | Labb 7. Algoritmer. | |
48 |
Dataabstraktion (abstrakt kontra konkret, definition av datatyp, arbetsmetodik för datatypsval) Algoritmer (selection sort, insertion sort, rekursiva algoritmer, quicksort. Ingår för alla kursdeltagare, men diskuteras enbart på "En sak i taget"-seminarium. Övriga läser på egen hand.) |
||
49 | - |
- |
Labb 8. Dataabstraktion. En större labb än labbarna 6-7, så börja i tid! |
50 | - |
Gemensamt seminarium/föreläsning 11: Information om tentan i TDDE24. Leds av examinatorn. |
|
51 | - |
Sidansvarig: Jonas Kvarnström
Senast uppdaterad: 2024-11-05