Rのクラス周りが混沌としているので誰かまとめてください
首題の通りです。他言語と比較した方がいいと思うのですがいかんせん私はその経験が少ない。
各クラスの内容ではなく周辺知識だけ以下にまとめておきますね。
個人的にR5はslideshareパッケージを作るときに使ってみて使いやすかった憶えがあります。
S3 | 最古参のクラス。Googleのコード規約はこれを勧めていたような。 |
---|---|
S4 | Bioconductorはこれで書くことになってた気がするけど今はR5でもいいのかな。 |
Reference class(R5) | Rの組み込みのクラスの中ではこれが最新。これは使用経験があるが、なんでもありのS3、制約の多いS4に比べると使いやすかった。 |
R6 | RStudioのエンジニア、Winston Changが作った新しいクラス。Rの組み込みではなくR6パッケージを読み込んで使う。他言語のオブジェクト指向に近くて書きやすいとか。 |
参考にしようとしている資料
R6の紹介記事。
RPubs - Introduction to R6 Classes
R6でパッケージを書き直したという記事。
Object Oriented Choropleths · trulia/choroplethr Wiki · GitHub
S3とS4とR5の比較記事。
Rのオブジェクト指向について(R) - script of bioinformatics
S3とS4とR5の比較チートシート。
http://biecek.pl/R/RC/Jakub%20Derbisz%20R%20reference%20card%20classes.pdf