[include(틀:다른 뜻1, other1=동음이의어, rd1=장고)] [[파일:external/www.djangoproject.com/hdr_logo.gif]] [[http://www.djangoproject.com|공식 홈페이지]] [목차] == 개요 == Django는 2005년부터 시작된 [[Python]]의 오픈 소스 [[웹 프레임워크]]이자 풀 스택 프레임워크이다. Django의 발음 기호는 [ˈdʒæŋɡoʊ]로 [[쟁고우]] 정도로 읽으면 된다. [[장고: 분노의 추적자|참고로 D는 묵음이다.]] 대한민국에서는 [[장고]]로 읽는데, 동명의 서부극 영화 때문에 종종 한글 표기를 '[[쟝고]]'로 쓰기도 한다. Django 소프트웨어 재단은 소셜 댓글 서비스 [[https://disqus.com|디스커스(Disqus)]]를 만든 곳이기도 하다. [[Python]]을 이용해 제작한다. Django는 [[Python]] 기반 [[웹 프레임워크]] 중에 가장 널리 퍼져있다. 일반적으로 파이썬을 웹 서비스에 쓴다고 하면 Django 또는 [[Flask]]를 쓴다고 생각하면 된다. 둘의 차이는 풀 스택 프레임워크(Django)냐 아니냐 정도. MVT[* Model-View-Template] 패턴에서 Model의 경우 데이터베이스와 연동이 편하게 만들어져 있다. 기본적으로 Model에 해당하는 DBMS는 [[SQLite]]를 사용하게 되어있으며, Django Admin 기능을 통해 쉽게 조회/편집이 가능하다.[* Setting.py에서 DATABASE 부분을 수정하고 migrate 하면 DBMS를 PostgreSQL이나 MySQL, MariaDB 등으로 쉽게 변경할 수 있다.] || [[파일:Django MTV Pattern Diagram.png]] || || Django가 웹브라우저의 요청을 받았을 때 요청에서 응답까지의 흐름을 잘 나타낸 다이어그램 || == 특징 == 강력한 풀스택 웹 프레임워크답게 기본적으로 제공하는 것들이 많다. * [[http://www.incodom.kr/ORM|ORM]]을 기본적으로 제공한다. * 관리자 페이지를 기본적으로 제공한다. * 자주 사용되는 로직들을 묶어서 기본적으로 제공한다.[* 사용자 인증, django.shortcuts, Generic View, User model 등] * 만들어진 엔티티에 따라 권한 목록을 알아서 제공한다. == 역사 == 장고는 2003~2004년에 로렌스 저널-월드([[https://www2.ljworld.com|Lawrence Journal-World]])라는 신문사의 인턴 웹 프로그래머였던 에이드리안 홀로바티(Adrian Holovaty)와 사이먼 윌리슨(Simon Willison)이 파이썬을 이용해 애플리케이션을 만들기 시작하면서 처음 개발되었다. 2003년 로렌스 신문사의 웹사이트는 [[PHP]] 기반으로 쓰여졌었는데, 홀로바티와 윌리슨은 당시 PHP 버전은 객체지향을 지원하지 않아서 규모가 큰 웹사이트에 적합하지 않다고 생각했고 평소에 관심을 가지고 있던 파이썬으로 웹 개발을 하기로 결심했다. 하지만 규모가 큰 웹 개발에 적합한 파이썬 도구가 없다는 것을 깨닫고 새롭게 장고를 개발하게 된 것이다. 개발을 처음 할 때 사실 장고를 웹 프레임워크라고 생각한 적은 없었고, 그냥 CMS를 개발하는 것이라고 생각했다고 한다. 개발자가 개발 당시의 기억들을 풀어놓은 글을 읽고 싶다면 [[https://www.quora.com/What-is-the-history-of-the-Django-web-framework-Why-has-it-been-described-as-developed-in-a-newsroom|여기(영어)]]에 사이먼 윌리슨 본인이 직접 쓴 글이 있다. (공동 개발자인 에이드리안도 따봉을 눌렀다!) 장고라는 이름은 홀로바티가 좋아하던 기타리스트 장고 라인하르트에서 따온 것이라고 한다. 또한 장고는 사실 오직 로렌스 웹사이트를 구동하기 위해 개발된 것이었지만, 홀로바티와 윌리슨이 로렌스의 오너 기업인 더 월드 컴퍼니(The World Company)를 설득하여 오픈 소스로 2005년 7월에 [[BSD 라이선스]]로 공개하게 되었다. 윌리슨은 더 월드 컴퍼니도 다른 오픈 소스 프로젝트를 많이 사용했기 때문에 쉽게 설득할 수 있었다고 얘기했다. == 사용 중인 곳 == * [[인스타그램]]: 세계에서 제일 큰 규모의 장고 웹사이트이다. 그래서 그런지 장고 소프트웨어 재단에 매년 3만불 이상을 기부하고 있고 2개의 플래티넘 법인 회원 중 하나이다. 다른 하나는 [[IntelliJ IDEA]]를 만든 [[JetBrains]]. * [[8퍼센트]]: P2P 대출 사이트. 프런트엔드를 [[http://www.iueditor.org|IUEditor]]로 개발하였다. * [[http://www.smartstudy.co.kr/|스마트스터디]]: 핑크퐁 북스토어 등이 Django로 개발되었다. * [[http://www.prnd.co.kr|피알앤디컴퍼니]]: 내차팔기앱 [[http://www.heydealer.com|헤이딜러]]를 운영하고 있다. * [[https://www.wishket.com|위시켓]]: IT 아웃소싱 중개 서비스. * [[번개장터]]: C2C 플랫폼. Django 와 Flask를 사용하고 있다. * [[https://soomgo.com|숨은고수]]: O2O 고수 매칭 플랫폼. Django와 Vue.js를 사용했다. * [[https://www.peoplefund.co.kr/|피플펀드]]: P2P 금융 플랫폼, Django를 사용하고 있다. * [[https://www.mymusictaste.com/|마이뮤직테이스트]]: 콘서트 메이킹 플랫폼, Django를 사용하여 global service를 하고 있다. * [[Laftel]]: 애니메이션 스트리밍 서비스, Django를 사용하고 있다. * [[https://deliveryhero.co.kr/|딜리버리히어로코리아]]: 요기요, 배달통 서비스를 하고 있는 푸드테크 기업. Django를 사용하고 있다. * [[https://sendbird.com/|SendBird]]: 채팅 API를 제작하는 B2B 기업. Django를 사용하고 있다. * [[https://www.tourlive.co.kr/|투어라이브]]: 오디오 투어 서비스를 하고 있는 테크 트레블 기업. Django를 사용하고 있다. * [[https://www.hwahae.co.kr/|화해(버드뷰)]]: No.1 모바일 뷰티 플랫폼. Django와 React를 사용하고 있다. * [[http://kgacademy.kr|KG아이티뱅크]]: IT 학원으로 Python을 활용한 웹 서버 구축 과정에서 Django를 사용하고 있다. == 관련 문서 == * [[Ruby on Rails]] * [[Flask]] [[분류:웹 프레임워크]] [[분류:Python]]