Masquer la complexité avec l'encapsulation

Programmation orientée objet avec S3 et R6 en R

Richie Cotton

Data Evangelist at DataCamp

Programmation orientée objet avec S3 et R6 en R

Encapsulation

Programmation orientée objet avec S3 et R6 en R

Encapsulation

 

 

                                        |

implantation   |   interface utilisateur

                                        |

Programmation orientée objet avec S3 et R6 en R
microwave_oven_factory <- R6Class(
  "MicrowaveOven",
  private = list(
    power_rating_watts = 800,

door_is_open = FALSE
),
public = list(
open_door = function() {
private$door_is_open <- TRUE
}
)
)
Programmation orientée objet avec S3 et R6 en R

 

 

 

private$ accède aux éléments privés

self$ accède aux éléments publics

Programmation orientée objet avec S3 et R6 en R

Résumé

  • Encapsulation = séparer l'implantation de l'interface
  • Stocker les données dans la liste private
  • Stocker les méthodes dans la liste public
  • Utiliser private$ pour accéder aux éléments privés
  • ... et self$ pour accéder aux éléments publics
Programmation orientée objet avec S3 et R6 en R

Passons à la pratique !

Programmation orientée objet avec S3 et R6 en R

Preparing Video For Download...