Aan de slagGa gratis aan de slag

De klasse voor de magnetron specificeren

Om R6-objecten te maken, moet je eerst een class generator aanmaken, ook wel een factory genoemd. Deze maak je met de functie R6Class() (docs).

Het eerste argument van R6Class() is de naam van de klasse van de objecten die worden gemaakt. Volgens de conventie schrijf je die in UpperCamelCase. Een ander argument van R6Class() heet private en bevat de gegevensvelden (data fields) voor het object. Dit argument moet een lijst zijn, met namen voor elk van de elementen.

Verdere argumenten van R6Class() komen aan bod in de volgende oefeningen. Het patroon om een objectfactory te definiëren is als volgt.

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

Deze oefening maakt deel uit van de cursus

Objectgeoriënteerd programmeren met S3 en R6 in R

Cursus bekijken

Oefeninstructies

  • Definieer een factory voor een magnetron.
    • Roep R6Class aan.
    • De klassenaam moet "MicrowaveOven" zijn.
    • Het element private moet een list zijn.
    • Die lijst moet één veld bevatten, met de naam power_rating_watts, met de waarde 800.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Define microwave_oven_factory
microwave_oven_factory <- ___(
  "___",
  ___ = ___(
    ___ = ___
  )
)
Code bewerken en uitvoeren