강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

back010님의 프로필 이미지
back010

작성한 질문수

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)

Django의 View나 URL의 네이밍 컨벤션

작성

·

26

0

안녕하세요 강사님, 스타트업에서 django를 활용해 개발하고 있는 신입 개발자입니다.

일을 시작하다 보니 제가 django에 대해 잘 모르고 있다는 것을 느껴 수강하게 되었는데요, 그 중 가장 고민이 되는 부분이 네이밍이었습니다.

그래서 질문드리는 것이 Django에서는 View나 URL 엔드포인트 별명(name=에 들어가는 값)을 지을 때 해당 객체의 타입도 같이 적는지 궁금합니다.

예를 들어 View의 이름을 지을 때 PostRenderView라고 짓는지, 아니면 PostRender라고만 해도 될까요? url name을 지을 때에도 post_render라고만 하면 되는지, post_render_view라고 해주는게 좋은지 django의 컨벤션을 알고 싶습니다.

제가 생각하기엔 View의 클래스 이름은 view라는 것을 명확하게 하기 위해 View를 붙이는 게, url name은 template에서 쓰이는 별명이므로 post_render라고만 하는 게 좋다고 생각해서 지금까지 이렇게 짓고 있었습니다.

또 HTTP response에 대해 들었던 내용 중에 정확하진 않지만 메서드 타입이 get이면 이미 타입에 역할이 포함되어 있기 때문에 메서드 이름에 get을 넣지 않는 게 좋다라고 들었던 기억이 있어서요.

강사님의 생각이 궁금합니다. 알찬 강의 잘 수강하고 있습니다. 감사합니다!

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

back010님께서 제기한 Django의 네이밍 컨벤션에 대한 고민을 이해합니다. Django에서는 명시적이고 직관적인 이름 짓기를 추천합니다.

  1. View 클래스의 이름 짓기:

    • Django의 클래스형 View의 경우, 클래스 이름 끝에 View를 붙이는 것이 일반적입니다. 따라서 PostRenderView처럼 명명하는 것이 좋습니다. 이는 뷰의 역할과 위치를 명확하게 나타내주기 때문에 소스코드를 읽는 다른 개발자들이 더 쉽게 이해할 수 있습니다.
  2. URL name(alias)의 이름 짓기:

    • URL name의 경우, 템플릿에서 많이 사용되기 때문에 간결하고 기억하기 쉬운 이름을 사용하는 것이 좋습니다. 따라서 post_render와 같이 작성하는 것이 일반적입니다. 추가로 ‘_view’를 붙이는 것은 필요하지 않으며, URL의 행동(렌더, 조회 등)을 명확하게 나타내면 충분합니다.
  3. 메서드 이름 짓기:

    • HTTP 메서드 타입은 기본적으로 메서드에 역할을 포함하고 있기 때문에 get, post 등의 메서드 이름에 해당 HTTP 메서드명을 포함하지 않는 것이 일반적인 컨벤션입니다. 예를 들어, get() 메서드의 경우 retrieve_post처럼 구체적인 동작을 설명하는 이름을 붙이는 것이 좋습니다.

Django 프로젝트에서 명확하고 일관성 있는 네이밍은 유지보수와 협업에 큰 도움이 됩니다. 강의를 통해 Django의 다양한 컨벤션과 모범 사례를 잘 익히시길 바랍니다. 감사합니다.

추가적인 정보가 필요하다면 Django 공식 문서를 참고해보세요. 좋은 학습 되시길 바랍니다!

back010님의 프로필 이미지
back010

작성한 질문수

질문하기