6  Buenas practicas en R

Notas personales recabadas a partir de los tutoriales y ejemplos 😊. Espero que les funcione 💜

6.1 Materiales informativos

💪 Estuve muy intensa viendo su codigo. Muchas gracias por tenerlos publico.

6.2 Un algoritmo nos permite resolver un problema ⭐

Un algoritmo es un método para resolver un problema mediante una serie de pasos definidos, precisos y finitos.

  • Definido: si se sigue dos veces, se obtiene el mismo resultado. Es reproducible.

  • Preciso: implica el orden de realización de cada uno de los pasos.

  • Finito: Tiene un numero determinado de pasos, implica que tiene un fin.

Un algoritmo podemos definirlo como un programa o software.

6.3 Para escribir un buen software necesitas:

Escribir código mantenible (maintainable code), usar control de versiones (version control) y rastreadores de problemas (issue trackers), revisiones de código (code reviews), pruebas unitarias (unit testing) y automatización de tareas (task automation).

Wilson, et al. 2014. PLOS Biology

Con el fin de previnir retracciones.

Pasos para escribir un buen software
  1. Análisis del problema / Definir el problema

  2. Diseño del algoritmo / Diseño del programa

  3. Codificación / Escribir el código

  4. Compilación y ejecución del programa

  5. Verificación / Realizar pruebas

  6. Depuración / Detectar los errores y corregirlos

Programacion defensiva

  1. Documentación

6.4 Paso 7: Documentación

Note
  • Autor (author): Su nombre

  • Dia (date): Fecha de creación

  • Paquetes (packages)

  • Directorio de trabajo (Working directory): En que carpeta se encuentra tu datos y programa.

  • Información descriptiva del programa (Description): ¿Para qué sirve el programa? Ej: El siguiente programa realiza la suma de dos numeros enteros a partir de la entrada del usuario y posteriormente la imprime en pantalla.

  • Usage ¿Cómo se utiliza?

  • Argumentos (Arguments)

    • Información de entrada (Data Inputs): Ej: Solo numeros enteros (sin decimales).

    • Información de salida (Outpus): Graficas, figuras, tablas, etc.

6.5 Puntos claves para buenas practicas en bioinfo ⭐

  1. Escriba programas para personas, no para computadoras (Documenta qué hace y por qué). - Se coherente en la nomenclatura, indentación y otros aspectos del estilo.

  2. Divide los programas en funciones cortas de un solo propósito. 💻 📚

  3. No repitas tu código. Crea pasos reproducibles o que se repitan por si solas. ➰

  4. Planifique los errores (Programacion defensiva) 🚩

  5. Optimice el software sólo después de que funcione correctamente. - Si funciona no lo modifiques, simplificalo.

  6. Colaborar - Busque siempre bibliotecas de software bien mantenidas que hagan lo que necesita. 👥

Ejemplo de como realizo mis documentos 💜

Aqui les dejo el script que les doy a mis alumnos VisualizacionDatos.R del curso de Análisis de datos de RNA-Seq.

6.6 Referencias