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
Oefeninstructies
- Definieer een factory voor een magnetron.
- Roep
R6Classaan. - De klassenaam moet
"MicrowaveOven"zijn. - Het element
privatemoet eenlistzijn. - Die lijst moet één veld bevatten, met de naam
power_rating_watts, met de waarde800.
- Roep
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Define microwave_oven_factory
microwave_oven_factory <- ___(
"___",
___ = ___(
___ = ___
)
)