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) 를 이용해
자유롭게 구성요소를 추가할 수 있다.