Fichiers d'aide avec les packages R

Développer des packages R

Jasmin Ludolf

Content Developer

Structure d'un package R

Exemple de structure de package

Développer des packages R

Fichiers d'aide pour les fonctions

Ordre des sections d'un fichier d'aide

  • Titre
  • Description

Aide de use_package

Développer des packages R

Fichiers d'aide pour les fonctions

Ordre des sections d'un fichier d'aide

  • Titre
  • Description
  • Utilisation
  • Arguments

Aide de use_package

Développer des packages R

Fichiers d'aide pour les fonctions

Ordre des sections d'un fichier d'aide

  • Titre
  • Description
  • Utilisation
  • Arguments
  • Résultats et/ou Voir aussi
  • Exemples

Aide de use_package

Développer des packages R

En-têtes roxygen2 pour Title et Description

  • Le texte d'en-tête après #' apparaît au-dessus de la définition de la fonction

 

#' Dépendre d'un autre package
#'

#' `use_package()` ajoute une dépendance à un package CRAN dans `DESCRIPTION` et #' donne quelques conseils pour bien l'utiliser. `use_dev_package()` ajoute une #' dépendance à un package en développement, en ajoutant le dépôt dev à `Remotes` #' afin qu'il soit installé automatiquement depuis le bon emplacement.
Développer des packages R

Utilisation et en-tête roxygen2 pour Arguments

use_package(package, type = "Imports", min_version = NULL)
#' @param package Nom du package dont dépendre.
#' @param type Type de dépendance : doit être l'un de "Imports", "Depends",
#'   "Suggests", "Enhances" ou "LinkingTo" (ou une abréviation unique). La
#'   correspondance n'est pas sensible à la casse.

#' @param min_version Facultatif : version minimale requise pour le package. #' Mettez `TRUE` pour utiliser la version actuellement installée.
#' @param remote Par défaut, un remote GitHub `OWNER/REPO` est inséré. #' Vous pouvez fournir une chaîne de caractères pour préciser le remote, p. ex. #' `"gitlab::jimhester/covr"`, en utilisant toute syntaxe prise en charge par le #' package [remotes]( #' https://remotes.r-lib.org/articles/dependencies.html#other-sources).
Développer des packages R

En-têtes roxygen2 pour Returns et See Also

Depuis unitConverter :

#' @returns Une valeur numérique de température dans l'unité indiquée par `unit_to`.

Depuis use_this :

#' @seealso La [section sur les dépendances
#'   ](https://r-pkgs.org/description.html#dependencies) de [R
#'   Packages](https://r-pkgs.org).
#'
Développer des packages R

Fonctions exportées vs non exportées

Fonctions exportées :

  • Chargées avec le package
  • Appelez use_packag() juste après l'appel à library()
  • Documentées dans les fichiers d'aide
  • Fonctionnalités principales du package

 

Fonctions non exportées :

  • Appelées avec :::
  • Peuvent être documentées
  • Soutiennent les fonctions exportées
Développer des packages R

Comment exporter une fonction

  • Par défaut, les fonctions ne sont pas exportées
  • Auparavant : unitConverter:::temp_converter()

 

#' @export
Développer des packages R

Exemples

#' @examples
#' \dontrun{
#' use_package("ggplot2")
#' use_package("dplyr", "suggests")
#' use_dev_package("glue")
#' }
Développer des packages R

Passons à la pratique !

Développer des packages R

Preparing Video For Download...