CS

MTV 패턴(Django)

zhelddustmq 2024. 8. 9. 15:37

0. MTV 패턴은 MVC 패턴을 살짝 변형한 것

 

MVC 디자인 패턴

  • Model - View - Controller 이렇게 3파트로 나누어져있음
  • 데이터와 논리 구조를 제어하는 설계로 널리 사용되는 디자인 패턴 중 하나
  • → 하나의 큰 소프트웨어를 나눠서 생각해보기 위해서 등장한 패턴

역할

  • Model : 데이터와 관련된 로직을 관리
  • View : 레이아웃과 관련된 화면을 처리
  • Controller : Model과 View를 연결하는 로직을 처리

MVC vs MTV

MVC MTV
Model Model
View template
Controller View

 

MTV Pattern

  • Model
    • MVC에서의 Model
    • 데이터와 관련된 로직을 처리
    • → 데이터 구조 정의, 데이터베이스 기록 관리
  • Template
    • MVC에서의 View
    • 레이아웃과 화면상의 로직을 처리
    • →즉, UI와 레이아웃을 다룸
  • View
    • MVC에서의 Controller
    • 메인 비지니스 로직을 담당
    • 클라이언트의 요청에 대해 처리를 분기하는 역할
      • DB도 조회하고 외부로 요청하기도 함
      • 응답을 만들어서 클라이언트에게 전달