I'd like to participate!
Not sure if I should send a PR for the README and/or the working groups' book.
Here are some ideas on this topic:
The development guide only has one line encouraging reusing classes and much more on how to write them.
It would be nice if it included some guidance about:
- which situations would benefit from a new class and which wouldn't
- which other low level classes could be built upon (BiocGenerics or other useful packages & classes)
- when it is useful to create new classes
- object oriented system (S3, S4, RC, R6, R7, ...)
It would be nice if the group could develop:
- normative material on why the classes were designed
- Procedures to recommended classes in package reviews and teaching materials.
- Procedures to select classes from already existing packages to recommend.
Perhaps I am splitting hairs here but I particularly want to distinguish between common used classes and promoted classes. Currently the development guide mentions common classes, there are some that I don't feel comfortable promoting as common-classes and to my knowledge are not used by many packages. In addition, when a class is superseded by another promoting a popular class is not the best for the developers (or users), thinking now about the SummarizedExperiment and the ExpressionSet classes.
Full disclosure: part of my interest is that I have/had some conflicts about a class implemented & promoted.
I'd like to participate! Not sure if I should send a PR for the README and/or the working groups' book.
Here are some ideas on this topic:
The development guide only has one line encouraging reusing classes and much more on how to write them. It would be nice if it included some guidance about: - which situations would benefit from a new class and which wouldn't - which other low level classes could be built upon (BiocGenerics or other useful packages & classes) - when it is useful to create new classes - object oriented system (S3, S4, RC, R6, R7, ...)
It would be nice if the group could develop: - normative material on why the classes were designed - Procedures to recommended classes in package reviews and teaching materials. - Procedures to select classes from already existing packages to recommend.
Perhaps I am splitting hairs here but I particularly want to distinguish between common used classes and promoted classes. Currently the development guide mentions common classes, there are some that I don't feel comfortable promoting as common-classes and to my knowledge are not used by many packages. In addition, when a class is superseded by another promoting a popular class is not the best for the developers (or users), thinking now about the SummarizedExperiment and the ExpressionSet classes.
Full disclosure: part of my interest is that I have/had some conflicts about a class implemented & promoted.