django는 이제 안 쓰나요?

PHYYOU·2022년 5월 1일
1

본 글은 Is the Django Framework Dead?의 번역하고, 덧붙인 글임을 밝힙니다.

Is the Django Framework Dead?

django는 웹 개발을 할 때 쓰면 좋은 프레임워크인지 한번 알아봅시다.

저는 자바스크립트와 파이썬을 배우고 있고, 백엔드 프레임워크를 배우려 계획중입니다. 그런데 제가 node.js 기반의 백엔드 프레임워크를 배워야 할 지, django를 배워야 할 지 잘 모르겠습니다. 실제로 제 눈에 Node.js 기반의 프레임워크가 엄청 많이 보이는데, django는 이제 안 쓰는 건가요?

아니죠, django는 2021년 Stackoverflow의 개발자 설문조사에서 가장 쓰고 싶은 웹 개발 프레임워크로 선정될 만큼 2022년에서도 큰 잠재력이 있는 프레임워크입니다. 정말 많은 django 개발자들이 매우 많은 곳에서 일하고 있어요.

만약 여러분이 장고가 여러분에게 적합한지 아닌지 알고 싶다면, 아래를 참고해 보세요.

왜 Django를 쓰나요?

  • 확장성: Django는 캐싱과 코드 재사용 기능으로 인해 확장성이 좋습니다. 이 말은 다시 말해 서버를 수평적으로 늘리기(Scale out) 쉽다는 말로, Django 앱이 트래픽 수요를 효과적으로 처리할 수 있습니다.
  • 보안: Django는 개발자가 SQL 주입, CSRF 공격 및 XSS와 같은 많은 보안 문제를 피할 수 있도록 도와줍니다. django는 여러 미들웨어를 프레임워크에서 기본적으로 지원합니다!
  • 많은 기존 라이브러리(package): 단순히 package를 추가하는 것 많으로도 여러 기능을 쓸 수 있는데, 이런 package들이 매우 많습니다. 그래서 처음부터 코드를 작성하는 대신 여러 기능을 포함하는 패키지를 활용할 수 있습니다. 시간이 엄창 단축되고 다른 필요한 영역에 집중할 수 있습니다.
  • 비동기 프로그래밍: Model-View-Template 아키텍처에 따라 Python 기반 Django는 어디서나 실행할 수 있으며 반응형 및 비동기 프로그래밍을 지원합니다.
  • SEO 최적화: Django 기반 앱은 IP 주소가 아닌 URL을 통해 서버에서 유지 관리할 수 있으므로 최적화하기 쉽고 SEO 친화적입니다.
  • 신속한 개발: Django를 사용하면 개발자가 여러 요소를 동시에 활용할 수 있습니다. 새로운 기능에 대해 별도의 코드를 작성할 필요가 없습니다. 또한 MVP를 빠르게 생성하는 데 도움이 됩니다.
  • 더 큰 커뮤니티 지원: Django는 2000명 이상의 개발자가 있는 광범위한 커뮤니티를 보유하고 있습니다. 이러한 지원을 통해 문제에 대한 최상의 솔루션을 그 어느 때보다 빠르게 얻을 수 있습니다.
  • 다양한 사용 사례: Django는 CMS(콘텐츠 관리 시스템)에서 소셜 네트워킹 및 뉴스 웹사이트에 이르기까지 모든 유형의 웹사이트를 생성할 수 있는 범위를 제공합니다.

왜 Django를 쓰면 안되는 걸까요?

  • 프로젝트가 엄청나게 클 때. 프로젝트가 커지게 되면, 결국 나중엔 한 codebase에서 모든 걸 할 순 없죠. 결국 이렇게 커진 프로젝트는 마이크로서비스로 나뉘는게 좋아요. 각 서비스들은 전담 개발팀과 프로세스에서 더 잘 처리할 수 있습니다. 그리고, 각 서비스에서는 다른 기술을 사용하는 것이 좋습니다. Django는 일부 특정 사용 사례에서 도움이 될 수 있지만 Django나 혹은 다른 프레임워크 하나로 모든 것을 개발하는 것은 현명하지 않을 수 있습니다.
  • 데이터베이스, 파일 작업 또는 복잡한 작업이 필요하지 않은 매우 기본적인 앱을 빌드해야 할때. 마이크로 프레임워크는 이러한 사용 사례에 더 적합합니다. 추천하자면, Flask는 Python으로 작성된 가장 인기 있는 마이크로 프레임워크 중 하나입니다. 유사한 마이크로프레임워크를 다른 기술에서 사용할 수 있습니다. PHP의 Slim, Java의 Apache Spark, Node.js의 Express.js 등
  • 처음부터 끝까지 다 만들고자 하고 무엇을 해야할 지 알고 있는 경우.
  • Django/Python을 전혀 모르며 기술을 수집하는 데 시간과 노력을 투자할 여유가 없을 때. 이 때의 좋은 것은 가장 잘 알고 있는 기술을 사용하는 것입니다. 새로운 기술이나 프레임워크를 사용하면 엉망이 될 가능성이 몇 배로 증가합니다.

Django는 이제 안 쓰나요?

전혀요. 쭉 앞으로도 쓸 것 같아요. Instagram, National Geographic, Mozilla, Spotify, Pinterest, Disqus, Bitbucket 및 Eventbrite와 같은 많은 유명 회사에서 Django를 쓰고 있습니다. 오히려 더 인기를 끌게 될 것입니다.

django를 씁시다

다시 말하지만 간단한 웹 앱을 만들고 싶다면 Django는 좋은 선택입니다. Django는 대부분의 것들은 이미 구현되어 있고, 꺼내 쓸 수 있죠. 우리가 해야 할 작업은 db의 모델, view 및 rendering 조금입니다. 그래서 Django는 시간을 아끼고 싶은 개발자들을 위한 탁월한 선택입니다.

profile
박효영

0개의 댓글