NemProgrammering.dk logo

Objekt orienteret programmering (OOP) i SWIFT

Lav din egen app kursus » Objekt orienteret programmering (OOP) i SWIFT # 13

Information om denne video

Underviser: Jeppe Borgaard Jørgensen   Video: 21:12   Lektion nr. 13 af 21

I denne video skal vi arbejde med objektorienteret programmering i SWIFT.

Objektorienteret programmering er en måde at kode på, hvor man opdeler sin kode i objekter. Ved at opdele i objekter får man en lang mere overskuelig og pæn kode, som er nemt at forstå. Opdeling i objekter gør også din kode modulær, hvilke også gør dit program nemmere at udvide og vedligeholde.

SWIFT understøtter selvfølgelig objekter, og dem skal vi således prøve kræfter med i denne video.

Øvelse

Lav et program, med en klasse kaldet “Car”. Hvilke instans-variabler kunne en bil have? Find minimum 3 og definer dem i klassen. Der skal defineres en ekstra instansvariabel (så du har 4) kaldet “engineIsOn”, som er en boolean, der repræsenterer om motoren på bilen er tændt eller ej.

Lav to metoder:

  • information() – udskriver alle instans-variabler på en læsevenlig måde
  • turnKey() – hvis bilens motor er slukket, skal den tænde. Er den tændt, skal den slukke. Der skal udskriven en status på hvad der sker.

Løsningsforslag til øvelse

class Car {
    var engineIsOn = false
    var brand = "Unknown"
    var color = "Unknown"
    var mileage = 123
    
    func turnKey() {
        print("You turn the key and:");
        
        if (engineIsOn) {
            engineIsOn = false
            print("The engine is turned OFF")
        } else {
            engineIsOn = true
            print("The engine is turned ON")
        }
    }
    
    func information() {
        print("This car is made by \(self.brand) and is \(self.color). The mileage shows \(self.mileage) km.")
    }
}
var myCar = Car()
myCar.brand = "Toyota"
myCar.color = "Red"
myCar.mileage = 8500

myCar.information()
// Tænder bil
myCar.turnKey()
// Slukker bil
myCar.turnKey()