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

Carlos J. Gil Bellosta cgb en datanalytics.com
Sab Nov 6 18:23:59 CET 2010


Hola, ¿qué tal?

Gracias a todos por los comentarios de este hilo.

Lo que parece claro es:

1) Que no existe una guía de estilo "urbi et orbi", no obstante lo cual,

2) es importante que grupos locales de desarrolladores se atengan a una 
debidamente explicitada.

Una cosa que echo de menos en ésta (la de Google) y otras guías de 
estilo que he visto es que no se toman la molestia de distinguir 
explícitamente entre:

1) Las normas que responden a motivos objetivos (p.e., usar siempre 
espacios (¡o tabuladores!) a la hora de indentar (¡pero nunca 
mezclarlos!)), que debieran razonarse en algún punto.

2) Las normas que responden únicamente a una cuestión de convención 
(p.e., indentar con N espacios).

Lo más parecido a una guía "urbi et orbi" sería una en la que las normas 
de tipo (1) fuesen fijas y las distintas alternativas para las normas de 
tipo (2) apareciesen enumeradas para que los distintos grupos de 
desarrolladores pudiesen decantarse por alguna (y seguirlas de ahí en 
adelante a rajatabla).

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalytics.com


On 11/05/2010 07:43 PM, Jordi Ocaña wrote:
> Hola,
>
> He seguido con interés el mensaje de Carlos sobre la guía de estilo para
> programar en R aparecida en Google y las reacciones que ha generado.
>
>
>
> En líneas generales creo que la guía Google es bastante floja, estoy de
> acuerdo con la mayoría de comentarios iniciales de Carlos y en particular
> con el hecho de que no trata en absoluto (ni lógicamente promueve) la
> creación de packages. Otro aspecto débil de esta guía es la falta casi
> absoluta de motivación de sus propuestas. Creo que es muy superior otra
> propuesta más antigua, citada en la propia guía de Google:
> http://www.maths.lth.se/help/R/RCC/.
>
>
>
> Algunos puntos concretos sobre los que quisiera opinar son:
>
> a) Nombres de variables: promueve el formato “palabra.otrapalabra” y
> desaconseja “palabraOtrapalabra”. Como es habitual en esta guía, no explica
> las razones. En mi opinión ambas estrategias deberían ser perfectamente
> admisibles, la primera dada su gran “tradición R” y la segunda dadp que
> también es muy común en otros lenguajes (y también en R). Ambas son
> altamente expresivas, aunque yo prefiero la segunda.
>
> b) Nombres de funciones: no encuentro muy razonable que tengan que empezar
> por una letra mayúscula. Puede ser simplemente una cuestión de gustos, pero,
> por ejemplo, reservaría el consejo para los nombres de clases, especialmente
> las clases S4.
>
> c) Constantes: “kNombre” creo que es de risa como criterio general, no niego
> que pueda ser útil a nivel de un programa concreto o de algún grupo de
> trabajo.
>
> d) Clases S4: desaconseja su uso, al menos en la tabla de contenido de la
> guía. Al leer el apartado correspondiente se puede ver que el tema está algo
> más matizado. En mi opinión el sistema de clases S4 tiene sus puntos fuertes
> y sus puntos débiles, como casi todo, pero creo que es francamente mejor
> para proyectos de una cierta envergadura, donde su mayor complejidad
> representa una inversión que vale la pena. Yo lo empleo regularmente y estoy
> satisfecho. De lo que se trata es de saber emplear R de forma razonable, no
> de matar moscas a cañonazos. En el caso de considerar que el esfuerzo de
> aprendizaje de S4 pueda valer la pena, aconsejo una visita a esta página
> Web: http://christophe.genolini.free.fr/.
>
>
>
> Tener una guía de estilo R puede ser útil siempre que se emplee
> razonablemente y con un cierto espíritu crítico. Por ejemplo supeditándola a
> criterios más específicos que hayan funcionado bien dentro de un grupo de
> trabajo. Me parece interesante tratar el tema e incluso intentar tener una
> guía de nuestra comunidad, aunque no partiría de la propuesta de Google,
> mejor sugiero la que os comento más arriba como punto de partida.
>
>
>
> Saludos cordiales,
>
> Jordi Ocaña Rebull
>
> Departament d'Estadística
>
> Universitat de Barcelona
>
>
>
>
> 	[[alternative HTML version deleted]]
>
>
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es



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