장고 앱 네이밍 규칙

소요 시간: 2분

Django 프로젝트에서 앱을 만들 때, 앱의 이름을 어떻게 정할지 고민될 수 있다. 특히 Python 패키지 규칙을 따르는 것이 중요하기 때문에, 이를 정확히 이해하고 따라야 한다.

이번 포스트에서는 Django 앱 이름을 정할 때 유의할 점과, 권장되는 네이밍 방식에 대해 알아보겠다.


네이밍 예시다음은 Django 앱 이름을 정할 때 고려할 수 있는 세 가지 예시다:

  1. my_django_app
  2. my-django-app (문법 오류 발생)
  3. 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 앱 이름을 결정할 때는 하이픈(-)을 피하고, 소문자와 언더스코어는 최소화하며, 간결하고 직관적인 이름을 선택하는 것이 중요하다.

장고 리스트