• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

MVC 패턴에서 Model 의 정의

21.08.25 18:01 작성 조회수 186

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(http://bit.ly/3fX6ygx)을 먼저 확인해주세요.
3. 질문 잘하기 메뉴얼(http://bit.ly/2UfeqCG)을 먼저 읽어주세요.

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]

안녕하세요 항상 강의 너무 잘 듣고 있습니다.
강의를 듣고 Servlet -JSP를 이용한 MVC 패턴에서
Controller = Servlet
View = JSP
Model = Request(Attribute)
라고 이해했는데요,
이 때 Controller 와 View 가 서로 Model(Attribute) 을 통해 데이터를 주고받는다고 이해했습니다.
그리고 이 Controller 를 좀 더 객체지향적으로 만들기 위해 Service 와 Repository로 레이어를 나누어 역할을 분리한다고 이해했는데요.
그런데 최근 후배에게 MVC 개념을 설명해주다가 이상한 걸 발견했습니다.
저희 회사 신입사원 교재에 MVC 패턴의 정의가 이렇게 나와있는 겁니다.
- Model : 비즈니스 로직(클라이언트 요청에 대한 업무 처리) 및 데이터 담당
>> 비즈니스 로직 = business service(biz) + data access object(dao)
이걸 보면 Service 와 Repository는 Model 에 해당하는 개념처럼 보입니다.
또한 해당 교재에서는 이처럼 비즈니스 로직을 Controller(Servlet)와 분리하는 것이 곧 MVC 패턴이라고 설명하고 있는데요,
제가 이해하는 "Controller(Servlet)와 View(Jsp) 를 분리하고 Model(Attribute)로 데이터를 전달하는 것이 곧 MVC 패턴이다" 라는 개념과 사뭇 다른 것 같습니다.
제가 뭔가 잘못 이해하고 있는 걸까요?

답변 1

답변을 작성해보세요.

0

안녕하세요. 이영규님

Model이라는 의미가 문맥에 따라서 다르게 사용됩니다.

MVC에서 데이터를 View로 전달하는 Model이라는 의미도 있고,

비즈니스 모델을 다룬다는 의미도 있습니다.

각각 다르게 이해하시면 됩니다.

감사합니다.