장고 앱 네이밍 규칙
Django 프로젝트에서 앱을 만들 때, 앱의 이름을 어떻게 정할지 고민될 수 있다. 특히 Python 패키지 규칙을 따르는 것이 중요하기 때문에, 이를 정확히 이해하고 따라야 한다.
이번 포스트에서는 Django 앱 이름을 정할 때 유의할 점과, 권장되는 네이밍 방식에 대해 알아보겠다.
네이밍 예시다음은 Django 앱 이름을 정할 때 고려할 수 있는 세 가지 예시다:
- my_django_app
- my-django-app (문법 오류 발생)
- mydjangoapp (권장되는 스타일)
패키지 이름의 문법Django 앱 이름이 Python 패키지 이름으로 사용될 때는 유효한 패키지 이름이어야 한다. Python에서는 패키지 이름에 대한 규칙이 존재하는데, 이를 준수하지 않으면 코드에서 오류가 발생할 수 있다.
my-django-app: 문법 오류
my-django-app은 잘못된 이름이다. Python에서는 하이픈(-)을 패키지 이름에 사용할 수 없다. 하이픈은 연산자 역할을 하기 때문에, 예를 들어 import my-django-app을 시도하면 **문법 오류(SyntaxError)**가 발생한다. 따라서 하이픈을 포함한 이름은 피해야 한다.
my_django_app: 유효한 이름, 그러나 권장되지 않음
my_django_app은 유효한 패키지 이름이지만, Python의 패키지 네이밍 규칙상 권장되지 않는 스타일이다. Python에서는 패키지 이름에 언더스코어(_)를 사용할 수 있으나, PEP 8에서는 일반적으로 소문자로 작성된 간결한 이름을 권장하고 있다. 물론 언더스코어를 사용할 수 있지만, Django에서는 가능한 한 간결하고 읽기 쉬운 이름을 선호한다.
mydjangoapp: 권장되는 스타일
mydjangoapp은 추천되는 스타일이다. PEP 8에 따르면, 패키지 이름은 짧고 소문자로 작성하는 것이 이상적이다. 이렇게 작성하면 코드의 가독성이 높아지고, 다른 개발자들이 쉽게 이해할 수 있다.
또한, Django의 네이밍 규칙에서도 언더스코어를 사용하지 않고, 한 단어로 이어지는 형태를 선호한다.
PEP 8 규칙PEP 8에서는 패키지 이름에 대해 다음과 같은 규칙을 제시하고 있다:
- 모듈 이름은 짧고 소문자로 작성해야 한다.
- 모듈 이름에 언더스코어를 사용할 수 있지만, 사용을 권장하지 않는다.
- 패키지 이름도 짧고 소문자로 작성되어야 하며, 언더스코어는 사용하지 않는 것이 좋다.
따라서, my_django_app은 유효한 이름이지만, mydjangoapp처럼 언더스코어 없이 한 단어로 이어지는 형태가 더 권장되는 스타일이다.
결론Django 앱 이름을 정할 때, my_django_app과 mydjangoapp은 모두 유효한 이름이지만, mydjangoapp이 더 적합한 네이밍 스타일이다. 이는 Python과 Django 커뮤니티에서 권장하는 스타일을 따르며, 가독성 및 유지보수 측면에서도 더 유리하다.
따라서 Django 앱 이름을 결정할 때는 하이픈(-)을 피하고, 소문자와 언더스코어는 최소화하며, 간결하고 직관적인 이름을 선택하는 것이 중요하다.