[Django] MTV

less than 1 minute read

django-version-2.1.4

MVC

일반적으로 웹 개발시 언급되는 패턴은
MVC (“Model”, “View”, “Controller”) 이다.
이해를 돕기위해 간단히 정리하자면 아래와 같다.

Model == 데이터(Data)

View == 사용자 인터페이스(UI)

Controller == 로직(Logic), 중계자

이러한 패턴은 분업 / 유지보수 등에 많은 이점을 제공한다.

Django 또한 유사한 패턴을 사용하는데, 차이점을 아래에서 살펴보자.



MTV

Django 의 개발 패턴이다.

“Model”, “Template”, “View” 의 약자이다.

처음 접할 때 혼란을 줄 수 있는 부분은 바로 “View” 이다.
Django의 “View” 는 MVC의 “Controller” 와 같은 역할을 담당한다.
아래에 간단히 정리해보겠다.


MVC MTV (Django) 역할 관련 파일
Model Model 데이터 (Data) models.py
View Template 사용자 인터페이스 (UI) templates/*
Controller View 로직 (Logic), 중계자 views.py


Django Documentation 자주 묻는 질문: 일반
을 살펴보면, MVC 와는 다른 용어를 사용하는 이유를 설명하고 있다.
또한, Django 에서 Controller 는 프레임워크 자체가 될 것이라는 언급도 있으므로,
위의 정리한 표가 정확히 일치한다고 할 수는 없다.
따라서, 이해를 돕기위한 참고로 보길 바란다.



Reference

Leave a comment