ett objekt? • Vad är en klass? • Vad är attribut och metoder? • Kunna skapa ett klassdiagram (av en klass) • Kunna implementera en klass från ett klassdiagram • Kunna använda Python Type Hints
kod – Lättare att göra i OOP – Kan beskriva inte bara hur objekten ser ut, utan även hur de får agera ▪ Källkoden blir ofta enklare att hantera – All relevant kod på samma ställe ▪ Med OOP är det enkelt att återanvända kod – Vi vill ju inte uppfinna hjulet eller skriva om kod igen… ▪ Väldigt många större projekt, byggs enligt OOP
t.ex. bestämma vilka attribut som är obligatoriska för att skapa en instans av klassen, m.m. Sträng-funktion - I Python finns funktionen _ _str_ _ vars uppgift är att skriva ut en textbaserad beskrivning av instansen.
I tjänst ▪ Antal passagerare ▪ Städer Sträng Bool Nummer Lista Metoder ▪ Plocka upp passagerare ▪ Släppa av passagerare ▪ Aktivera taxibilen för körningar ▪ Avaktivera taxibilen för körningar ▪ Ange namn på taxichaufför ▪ Hämta namn på taxichaufför ▪ …
i Python ▪ Metoden är konstruktor för klassen som den finns inuti ▪ init körs varje gång ett objekt skapas från klassen Skapar ett nytt objekt Funktionen init kalls på Koden i init - funktionen körs myTaxi = Taxi(”Anton”) self.driver = ”Anton” …
I tjänst ▪ Antal passagerare ▪ Städer Sträng Bool Nummer Lista Metoder ▪ Plocka upp passagerare ▪ Släppa av passagerare ▪ Aktivera taxibilen för körningar ▪ Avaktivera taxibilen för körningar ▪ Ange namn på taxichafför ▪ Hämta namn på taxichafför ▪ …
fungerar på samma sätt som en funktion, fast man skickar alltid med self som första parameter ▪ En metod tar kan, efter parametern self, ta emot hur många parametrar som helst
I tjänst ▪ Antal passagerare ▪ Städer Sträng Bool Nummer Lista Metoder ▪ Plocka upp passagerare ▪ Släppa av passagerare ▪ Aktivera taxibilen för körningar ▪ Avaktivera taxibilen för körningar ▪ Ange namn på taxichafför ▪ Hämta namn på taxichafför ▪ …