Um plano de batalha

Programação Defensiva em R

Dr. Colin Gillespie

Jumping Rivers

Começando pequeno

Grandes resultados podem ser alcançados com pequenas forças.

Sun Tzu, A Arte da Guerra

Programação Defensiva em R

O que há em um (nome de) arquivo?

  • Todos os scripts R ficam em arquivos
    • Então nomes de arquivos são importantes
    • Consistência nos nomes é muito importante
      • Que regras podemos adotar?

Programação Defensiva em R

Múltiplas palavras

Nomes de arquivos costumam ter várias palavras

Por exemplo

  • cluster-analysis.R
  • load-survival-data.R
  • plot-residuals.R
Programação Defensiva em R

Espaços, hífens ou underscores?

Pergunta simples: como separar as palavras?

  • Espaço: analysis clustering.R
  • Underscore: analysis_clustering.R
  • Hífen: analysis-clustering.R

Pense um instante e responda duas perguntas

  • Qual você usa?
  • Qual você deveria usar?
Programação Defensiva em R

Espaços em nomes de arquivos

  • Não use
  • Sério, não use

Espaços em nomes de arquivos e pastas são uma má ideia

  • Na web, file name.R vira file%20name.R
  • No terminal, nomes com espaço exigem aspas
  • Expressões regulares ficam mais chatas
  • Diferenças sutis são difíceis de ver
    • file name.R - um espaço
    • file name.R - dois espaços
Programação Defensiva em R

Hífens ou underscores

Há alguns problemas menores com underscores

  • O Google trata file_name como uma palavra só
    • Então buscar só por file não funciona
  • O caractere de regex \w trata _ como um caractere

Esses problemas não se aplicam a hífens

Confissão:

  • Eu geralmente uso underscores
  • mas estou tentando mudar
Programação Defensiva em R

Vamos praticar!

Programação Defensiva em R

Preparing Video For Download...