Welcome to the "Introduction to R Development" class!
The class is intended to be a first contact with the concepts that you need to
R language. The goal is not just to present the main features of
R development but also to explore some tools that help produce reliable code.
I would like to think of the class as an introduction to statistical programming
in an open source environment. Because of that, the class puts a lot of emphasis
on additional tools to simplify the control, testing, and integration of the
code base that are common in the open source community.
Although it says "Introduction" in the title, it is introductory only for people with previous experience in R or in software development. However, it is essentially a practical class and therefore it will not involve advanced programming concepts that are also probably outside my background.
- A review of functions in R.
- Object-oriented programming using the S4 classes.
- The structure of R packages.
- Including C++ code.
- Documentation using
- Unit testing using
- Version control using
- GitHub and Continuous Integration in Travis.
- A reproducible workflow with
- Code coverage.
The class is very heavily based on