Présentation de la formation
Le but principal de cette formation est de vous donner des outils pour faciliter le développement de code (performant) avec . L’aspect “performance” arrivera dans un deuxième temps, et les premiers outils présentés sont également très utiles dans des situations ne faisant pas intervenir de temps de calculs importants.
Nous allons centrer la présentation de ces outils de développement autour de la notion de package. Vous connaissez déjà cette notion, car vous avez déjà installer des packages depuis le CRAN par exemple. Vous savez également que c’est le moyen le plus standard dans pour partager et mettre à disposition du code. Nous allons vous montrer que le package est également un excellent outil pour développer le code.
Nous allons adopter le plan suivant :
Build an R package as a useful tool for code development
Leverage
git
for tracking changes, andGitHub
for sharing code, collaborative development, automating tests in a package and broadcast a companion websiteConstruire un package comme outils de développement de code
Utiliser
git
pour tracer les changements, etGitHub
pour partager son code, le développement collaboratif, automatiser les tests dans un package et diffuser un site web d’accompagnementMesurer le temps de calcul
Profiler le code
Utiliser
Rcpp
pour optimiser ce qui doit l’êtreParalléliser facilement le code
Logiciels et librairies nécessaires à la formation
Afin de suivre cette formation, il est nécessaire de disposer des logiciels suivants :
la dernière version de (https://cloud.r-project.org/)
la dernière version de
RStudio
(https://posit.co/download/rstudio-desktop/#download)un compilateur
C++
(tel quegcc
ouclang
- natif sous les système UNIX, pour les utilisateurs Windows nous recommandons l’installation de Rtools, pour les utilisateurs Mac il peut être nécessaire d’installer les outils de développement Apple comme indiqué ici)les packages suivants :
devtools
,future.apply
,itertools
,microbenchmark
,mvtnorm
,profvis
,Rcpp
,RcppArmadillo
,roxygen2
,testthat
,usethis
le logiciel git
le client GitHub Desktop
Pré-requis
Afin de pouvoir suivre cette formation correctement vous devez être à l’aise avec les aspects suivants :
- la programation avec dans l’environnement de développement
RStudio
- écriture de fonctions en
- structure de contrôle, en particulier les boucles for
- le calcul de la densité d’une loi normale multivariée