웹 개발을 공부하며 자주 들어봤을 MVC패턴과 Django의 MVT패턴의 차이가 궁금했다.
스윽 듣기로는 큰 차이가 없다고들 한다. 정말 그런지 한번 봐보자!
아, Django의 설계 철학도 한번 봐보면 좋을거 같아 링크도 걸어둔다.
MVC 패턴이란?
Model-View-Controller의 약자로 개발을 진행할 때 구성요소를 세가지의 역할로 구분하여 개발하는 개발 방법론이다.
위 이미지를 가져온 곳
MVC 패턴의 장점과 단점
MVT 패턴이란?
Model-Template-View의 약자로 MVC를 기반으로 한 디자인 패턴
Django에서의 MVT패턴은
일반적인 MVC패턴과 각각의 패턴이 하는 일은 크게 차이가 없다.
따라서 MVC패턴과 MVT패턴은 넓게 보면 동일하다고 할 수 있다.
하지만, MVT패턴에서는 View에 프레젠테이션 로직이 아닌, 비지니스 로직을 포함시켜야 한다고 주장하는 패턴이다.
또한 기존 MVC패턴에서 Controller에서 처리해야 했던 일부를 Django 프레임워크에서 자동적으로 처리한다.
즉, MVT패턴은 MVC패턴의 입장에서 보면
Model-Template-View(+Controller)의 형태로 구성되어있다고 볼 수 있을거같다.
다만 위에서 언급한 바와 같이 Controller의 역할 일부를 Django에서 처리하기 때문에 종종 생략되는 경우가 있다.
해당 포스트의 내용은
https://nitro04.blogspot.com/2020/01/django-mvc-mvt.html#1down
https://m.blog.naver.com/jhc9639/220967034588
에서 발췌하였다. 너무 좋은 글들이니 한번씩 봐도 좋을거같다.
템플릿이랑 뷰 순서 잘못된것같아요 ... !