[R] 파일명을 정의하는 방법 (feat. posit engineer)

해당 포스트에서는 posit(formerly RStudio) Engineer가 발표한 'R 파일명을 정의하는 방법'에 대해 소개합니다.

how-to-name-files-posit-engineer

INTRO

파일명을 정의하는 방법에는 다양한 방법이 있고, 개인마다 스타일이 있습니다. 하지만, 분석가나 개발자의 경우, 기계가 좀 더 잘 이해할 수 있고, 분석에 좀 더 잘 활용할 수 있으며, 타인이 봐도 직관적으로 이해할 수 있는 스타일로 파일명을 정의하는 것이 생산성 및 효율성을 높이는 방법 중 하나라고 생각합니다.

아래에서는 posit(formerly RStudio) engineer인 Jennifer Bryan이 제안하는 파일명 정의 방법에 대해 정리 및 설명합니다.

how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan

좋은 파일 이름은...

좋은 파일 이름은 아래 3가지 기준을 충족해야 합니다.

  1. 기계가 읽을 수 있고 (machine readable)
  2. 사람이 읽을 수 있고 (human readable)
  3. 정렬된 방법이 유용해야 한다 (sorted in a useful way)

how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan

1. machine readable

기계가 읽을 수 있는 파일명으로 정의하기 위해선 아래와 같은 조건들이 충족되어야 합니다.

  • regular expression and globbing friendly
    • avoid spaces, punctuation, accented characters, case sensitivity
  • easy to compute on
    • deliberate use of delimiters

즉, 정규 표현식문자열 구분에 친숙해져야 합니다. 이를 위해, 공백 사용은 자제하고, 특수 기호, 억양 문자, 대소문자 구분은 피해야 합니다. 또한, 기계(machine)가 계산하기 쉽게 하기 위해서는 구분자(delimiters)를 계획적으로 사용해야 합니다.

how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan
how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan
how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan

2. human readable

사람이 읽을 수 있는 파일명이란, 타인이 파일명을 보았을 때 어떤 것인지 쉽게 추측할 수 있어야 합니다.

  • make it easy to guess what the heck something is, based on its name

how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan
how-to-name-files-posit-engineer
[출처] How to name files - Jennifer Bryan

3. sorted in a useful way

유용한 방식으로 정렬하는 방법은, 아래 4가지가 있습니다.

  • plan for alphanumeric sorting
  • put something numeric-ish first-ish
  • use the ISO 8601 standard for dates
  • left pad numbers with zeros

즉, 영문과 숫자로 이루어진 명명규칙(naming rule)을 적용하거나, 숫자를 앞에 넣어 정렬되게 합니다. 그리고 날짜(date)를 넣을 때는 ISO 8601 표준에 따르고, 숫자를 사용할 때는 0을 사용하여 모든 자릿수가 동일하도록 사용합니다.

관련 링크

[1] [Youtube] How to name files - Jennifer Bryan