yahayaha

2-1. 모델 2와 스프링 MVC 개인적인 생각 본문

spring/MVC

2-1. 모델 2와 스프링 MVC 개인적인 생각

yaha 2024. 1. 16. 12:45

스프링 MVC는 흔히 ' 모델 2 '라는 방식으로 처리되는 구조를 가짐.
 
모델 2 방식은 쉽게 말해서 ' 로직과 화면을 분리 '하는 스타일의 개발 방식임.
 
모델 2방식은 MVC 구조를 사용하는데 그림으로 한번 봐보자.

 
모델 2방식에서는 사용자의 Request는 특별한 상황이 아닌 이상 먼저 Controller를 호출함.
 
이렇게 설계하는 가장 중요한 이유는 나중에 View를 교체하더라도 사용자가 호출하는 URL 자체에 변화가 없게 만들어 주기 위함임. 
 
Controller는 데이터를 처리하는 존재를 이용해서 데이터(Model)를 처리하고 Response 할 때 필요한 데이터(Model)를 View 쪽으로 전달하게 됨.
 
 
 
모델 2 MVC 패턴을 구글링하고 찾아보면 항상 나오는 말이 있다. 
 
" 유지보수가 좋다 "  
 
그럼 왜 유지보수가 좋을까? 
 
개발자와 디자이너간의 협업 시 충돌 방지 등등 도 있었고 다른 여러가지가 이유가 있었지만
 
가장 큰 이유는 " 돈 " 이라고 생각한다. 
 
고객이 요구하는 것은 Controller로 가게됨. 그리고 화면을 분리함. 이게 모델 2라는 기본적인 사상임.
 
그럼 여기서 Controller를 분리한 이유가 따로 나옴. 
 
URL을 고정을 하고싶어서임. 클라이언트 쪽 변경 비용이 엄청나게 커지기 떄문에. URL은 고정을 시켜두고 View(화면)만 바꾸고 싶은거임. 이 개념으로 시작된게 Controller는 분리하고 필요에따라  View와 Logic만 수정하려고 분리 된 게 모델 2임. 
 
처음에 공부를 할 때 일단 화면만 만드는 것이 아닌 비즈니스적인 측면에서 생각해보는게 더 좋은거 같음.
 
비즈니스적으로 보면 URL을 처리하는 로직은 따로 두고 View(화면)만 변경 할 수 있게 해두면. 
 
View(화면)를 전문적으로 개발할 수 있는 사람이 들어 오면 더 편해지고 클라이언트를 변경해서 들어가는 돈보다 더욱 저렴하게 해결이 가능함. 
 

'spring > MVC' 카테고리의 다른 글

1. 스프링 MVC 설정하기  (0) 2024.01.16