Etc..

MVC Pattern

요피짱 2020. 1. 10. 12:55

MVC 패턴이란 ?

 

Model/View/Controller 이렇게 3개로 분할해서 웹을 구현하는 패턴이다.

웹에서는 공통적인 규칙이 있는데,

사용자가 서버에게 요청을 하면 서버에서 응답을 해준다는 것이다.

여기서 개발자와 디자이너 , 퍼블리셔 , 프론트엔드의 협업이 중요한데,

초기 MVC 1 버전에서는 퍼블리셔가 웹에 요소를 추가하면

서버측에서도 코드수정이 이루어져야 수정이 가능하다.

 

 

MVC 1

 

사용자(Client) 서버(Web Server)
브라우저 ( 디자이너 ) HTML , CSS , JavaScript , JSP ( 퍼블리셔 )
HTML , CSS , JavaScript , JSP WAS(Web Application Server)
  Servlet , VO , DAO , JSP (백엔드 개발자)

모델 1은 각자의 역할을 명백히 나누기 어렵다.

위의 표를 보면 서버측에서 사용자에게 HTML을 보내주기에

퍼블리셔도 코드를 알아야하며 디자인쪽도 코드를 알아야한다.

때문에 각자 협업하기가 어려워진다.

각자 역할을 명백히 하기위해 MVC 2 버전이 있는데, 밑에서 알아보자.

 

 

MVC 2

 

사용자(Client) 서버
HTML , CSS , JavaScript VO,DAO
JSP(EL,JSTL) Servlet

 

위의 MVC 1 버전과 확실히 차이가 느껴진다.

MVC 2 버전에서는 이제 백엔드 개발자와 프론트엔드 개발자가

완벽하게 분리되어 서로 충돌할 일이 없을것 이다.

이제 서버에서는 값을 보내주고 사용자측에서 보여지는 화면을

서버에서 받은 값을 EL(Expression Language) , JSTL (Java Standard Tag Library) 를 이용해

자유롭게 구성요소를 추가할 수 있다.