LoslegenKostenlos starten

Die Mikrowellenofen-Klasse spezifizieren

Um R6-Objekte zu erstellen, musst du zuerst einen Klassengenerator erstellen, manchmal auch Factory genannt. Diese werden mit der Funktion R6Class() (Docs) erstellt.

Das erste Argument von R6Class() ist der Name der Klasse der Objekte, die erzeugt werden. Üblicherweise wird es in UpperCamelCase geschrieben. Ein weiteres Argument von R6Class() heißt private und enthält die Datenfelder für das Objekt. Dieses Argument sollte eine Liste sein, mit Namen für jedes ihrer Elemente.

Weitere Argumente von R6Class() werden in den nächsten Übungen besprochen. Das Muster zum Definieren einer Objekt-Factory sieht so aus:

thing_factory <- R6Class(
  "Thing",
  private = list(
    a_field = "a value",
    another_field = 123
  )
)

Diese Übung ist Teil des Kurses

<Kurs>Objektorientierte Programmierung mit S3 und R6 in R</Kurs>
Kurs ansehen

Übungsanweisungen

  • Definiere eine Factory für einen Mikrowellenofen.
    • Rufe R6Class auf.
    • Der Klassenname soll "MicrowaveOven" sein.
    • Das Element private soll eine list sein.
    • Diese Liste soll ein einzelnes Feld enthalten, mit dem Namen power_rating_watts und dem Wert 800.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Define microwave_oven_factory
microwave_oven_factory <- ___(
  "___",
  ___ = ___(
    ___ = ___
  )
)
Code bearbeiten und ausführen