Objektorientering
Föreläsning 11 – Introduktion till objektorientering (kapitel 15)
Koncept: Objektorientering, Klasser, Objekt
- Slides: lecture11_p3.pdf
- Kodexempel:
- f11_point_simple.py — enkel punktklass
- Nyckelbegrepp: klass, objekt, instans, attribut, self, konstruktor (init)
Föreläsning 12 – Metoder och objektinteraktion (kapitel 16)
Koncept: Klasser, Metoder, Konstruktorer
- Slides: lecture12.pdf
- Kodexempel:
- f12_time_example.py — tidklass utan metoder
- f12_time_example_methods.py — tidklass med metoder
- Nyckelbegrepp: metoder, self, str, repr, jämförelseoperatorer, inkapsling
Föreläsning 13 – Objektorientering fördjupning (kapitel 17)
Koncept: Klasser, Metoder, Konstruktorer
- Slides: lecture13_p3.pdf
- Kodexempel:
- Nyckelbegrepp: operatoröverlagring, arv, polymorfism
Större OOP-kodexempel
Koncept: Klasser, Objekt, Metoder
- Ett objektorienterat exempel.pdf — steg-för-steg OOP-genomgång (svenska)
- Small object-oriented example.pdf — OOP-genomgång (engelska)
- obj_example.py — komplett OOP-exempel
- fifoQueue.py — FIFO-kö utan OOP
- fifoQueueObj.py — FIFO-kö med OOP
- calc.py — enkel kalkylator
- calc2.py — förbättrad kalkylator
- matrix.py — matrisklass
- monty_hall.py — Monty Hall-simulation
- Nyckelbegrepp: datainkappling, FIFO-kö, klass vs instans, operatoröverlagring
Lab 4 – Kontoregister (deadline: 2026-03-10)
Koncept: Klasser, Objekt, Metoder
- Uppgift 0 (övning, ej betygsatt): simulera anslagstavlor med klassen
Board.Board-klass med konstruktor,message-attribut.- Instanser representerar enskilda anslagstavlor.
- Huvuduppgift: kontoregistersystem
- Krav: välstrukturerad OOP-design, ingen global variabel, kommenterad kod.
- Nyckelbegrepp: klasser, objekt, konstruktorer, metoder, inkapsling
- Inlämning: filuppladdning i Canvas + redovisning för handledare