[R-es] Una guía de estilo para programar en R... ¿comentarios?

Ramon Diaz-Uriarte rdiaz02 en gmail.com
Vie Nov 5 13:11:15 CET 2010


2010/11/4 Carlos J. Gil Bellosta <cgb en datanalytics.com>:
> Hola, ¿qué tal?
>
> Pues sobre las clases S4 no tengo tanta experiencia. Como usuario,
> trabajé bastante en su día cuando utilizaba Bioconductor. Y como
> desarrollador, construí un paquete en el que definía una clase de ese
> tipo.
>
> Fue una experiencia bastante frustrante: mis cañonazos malhirieron la
> mosca paro no la mataron del todo. En la versión final del paquete se
> cayó la clase S4. Y, personalmente, trataré de evitarlas en la medida
> de lo posible. En eso convenimos Google y yo.
>
> Recuerdo que durante mi periodo de máxima frustración hablé con Ramón
> Díaz Uriarte que, si no recuerdo mal, me desaconsejó su uso. Y me
> comentó que había algún/os peso/s pesado/s de R que se habían
> pronunciado en el mismo sentido. No sé si tendrá algo que añadir (y si
> he errado en el sentido de la cita, espero que no se lo tenga
> demasiado en cuenta a mi floja memoria).
>


La memoria de Carlos (al menos en este punto) anda perfectamente ;-).



Pego aquí algunos enlaces que tengo al respecto:

http://article.gmane.org/gmane.comp.lang.r.general/159123/match=s4+vs+s3

http://www.mail-archive.com/r-devel@r-project.org/msg10977.html

http://osdir.com/ml/lang.r.devel/2007-02/msg00149.html

http://tolstoy.newcastle.edu.au/R/e4/devel/08/01/0064.html

http://tolstoy.newcastle.edu.au/R/e6/help/09/02/4595.html

http://search.gmane.org/search.php?group=gmane.comp.lang.r.general&query=s4+vs+s3



Hay comentarios de Frank Harell, Brian Ripley, Terry Therneau, etc. El
último enlace, en particular, es de un largo thread. Dicho lo
anterior, hay otros que prefieren con mucho S4 (ej., veanse libros de
R. Gentleman y J. Chambers), y S4 es el tipo de OOP "oficial" de
BioConductor. Pero si uno revisa los archivos de BioC (hace más de 5
años?), verá que no todo el mundo (incluyendo algunos nombres
ilustres) era entusiasta de S4.


Personalmente, yo evito las clases S4 por las razones que comenta
Carlos y las que figuran en el thread anterior. Nunca he entendido qué
me aportarían (pero sí veo lo que me quitarían y los problemas que me
añadirían).



R.




> Creo que las clases S3 están para quedarse. No sé hasta qué punto la
> complejidad añadida que supone el uso de clases S4 van a contribuir a
> su popularización. Además, existen alternativas a las clases S3 y S4
> (p.e., http://cran.r-project.org/web/packages/proto/) que bien
> pudieran imponerse. De hecho, "proto" es el motor del "paquete
> revelación" de R que es ggplot2.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
>
> El día 4 de noviembre de 2010 11:29, r-uca <r-uca en uca.es> escribió:
>> A mi personalmente me ha chocado mucho la recomendación de no usar
>> clases S4.
>>
>> Para la creación el paquete orloca estuve mirando el tema de las clases
>> y por lo que leí había entendido que las clases S3 estaban en vías de
>> "desaparación".
>>
>> ¿Qué opináis al respecto?
>>
>> Saludos.
>>
>> --
>> ===
>> Proyecto R-UCA
>> http://knuth.uca.es/R
>> r-uca en uca.es
>> Manuel Muñoz Márquez
>> ===
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>



-- 
Ramon Diaz-Uriarte
Structural Biology and Biocomputing Programme
Spanish National Cancer Centre (CNIO)
http://ligarto.org/rdiaz
Phone: +34-91-732-8000 ext. 3019
Fax: +-34-91-224-6972



Más información sobre la lista de distribución R-help-es