[Django] Django MTV 개발 방식
Back End

[Django] Django MTV 개발 방식

 

MTV 개발 방식

 

  Django의 MTV 방식은 웹 프로그래밍 영역을 3가지 개념으로 나누어 개발하는 방식이다. Java 웹 프로그래밍에서 MVC 방식과 거의 동일한 개념이라고 한다. MTV 개발 방식의 세 가지 분류는 모델(Model), 템플릿(Template), 뷰(View)이다.


  1. 모델 (Model) : 테이블을 정의하는 일종의 데이터베이스 역할을 수행 > models.py
  2. 템플릿 (Template) : 사용자가 보게 될 화면(UI)의 모습을 정의 > templates 디렉터리 하위의 *.html 파일
  3. 뷰 (View) : 애플리케이션의 제어 흐름 및 처리 로직을 정의 > views.py

 

  • MTV 개발 방식의 장점

  이렇게 셋으로 나눠 개발하면 각 모듈 간에 독립성을 유지할 수 있고, Loose Coupling 설계 원칙 또한 지킬 수 있다. 또한 디자이너 , 응용 개발자, DB 설계자 등... 여러 사람 간의 협업도 쉬워진다.

 

  애플리케이션을 MTV 방식으로 개발할 수 있도록 골격이 만들어지고 파일 이름도 Django에서 알아서 지어준다! 어떤 파일을 만들어야 할 지 개발자가 고민할 필요는 없다고 한다.

 

MTV 코딩 순서

 
  모델, 템플릿, 뷰 이 세 가지 중에서 어떤 걸 먼저 손을 대야 하는지에 대해 정해진 순서는 없다...! MTV 방식에 따르면 화면 설계는 뷰와 템플릿 코딩으로 연결되고, 테이블 설계는 모델 코딩에 반영된다. 그렇기 때문에 일반적으로는 따로 개발할 수 있는 모델을 먼저 설계하고, 뷰와 템플릿은 서로 영향을 미치기 때문에 모델 이후에 같이 코딩한다고 한다.