티스토리 뷰

MVC 패턴 파헤치기
https://coding-factory.tistory.com/69 참고 

 

<출처-생활코딩>

 

👩‍💻 MVC 패턴이란?

MVC - Model, View, Controller의 합성어로 소프트웨어 공학에서 사용되는 소프트웨어 *디자인 패턴이다.


*디자인 패턴이란?
: 건축으로치면 공법에 해당하는 것으로, 소프트웨어의 개발 방법을 공식화 한 것이다. 소수의 뛰어난 엔지니어가 해결한 문제를 다수의 엔지니어들이 처리 할 수 있도록 한 규칙이면서, 구현자들 간의 커뮤니케이션의 효율성을 높이는 기법이다. 
<출처-위키피디아>

 

  • Model : 백그라운드에서 동작하는 로직을 처리한다. (데이터를 가진 객체, 파라미터로 주로 쓰인다.)DB의 테이블과 대응하는 경우가 많다.)

  • View : 사용자가 보게 될 결과 화면을 출력한다. (html/css/javascript를 모아둔 컨테이너)

  • Controller : 사용자의 입력처리와 흐름 제어를 담당한다. (사용자가 접근한 URL에 따라서 사용자의 요청사항을 파악한 후, 그 요청에 맞는 데이터를 Model에 의뢰하고, 데이터를 View에 반영해서 사용자에게 알려준다.)

MVC패턴에는 Model 1 방식과 Model 2 방식이 있는데 특히 Model 2 구조 기반의 MVC 패턴 구현은 JSP 개발자라면 무조건 알고 있어야할 개발 방식이라고 한다.

 

모델 1, 모델 2의 간단 정의

  • Model 1 : 비즈니스 로직 영역(Controller)에 프레젠테이션 영역(View)을 같이 구현하는 방식이다.
    사용자의 요청을 JSP가 전부 다 처리한다. 웹 브라우저 사용자의 요청을 받은 JSP는 자바빈이나 서비스 클래스를 사용하여 웹 브라우저가 요청한 작업을 처리하고 그 결과를 출력해준다.

<출처 - changhozz.tistory.com/126>

 

 

  • Model 2 : 비즈니스 로직 영역과 프레젠테이션 영역이 분리되어 있는 구현 방식이다.웹 브라우저 사용자의 요청을 Servlet이 받는다. Servlet은 요청을 View로 보여줄 것인지, Model로 보내줄 것인지 정하여 전송한다.  여기서 View 페이지는 사용자에게 보여주는 역할만 담당하고 실질적인 기능의 부분은 Model에서 담당한다. 

<출처 - changhozz.tistory.com/126>

 

 

 

모델 1, 모델 2의 장점과 단점

  • 장점

    • Model 1 : 모델 1 방식을 채택하면 빠르고 쉽게 개발할 수 있다는 장점이 있다. 

    • Model 2 : 모델2 방식은 View와 Controller를 분리하는 방식이다. 따라서 디자이너와 개발자의 분업이 가능하며 유지보수에 유리하다.

  • 단점 

    • Model 1 : JSP파일 자체가 너무 비대해지고, Controller와 View가 혼재하므로 향후 유지보수에 어려움을 겪을 수 있다.

    • Model 2 : 설계에서 어려움을 겪을 수 있고, 개발 난이도가 높다는 단점이 있다. 

> Model 1의 방식으로 웹 서비스를 개발하는 사례는 아예 없다고 봐도 무방하다고 한다.
   백엔드와 프론트엔드 역할 분담이 모호해서 오히려 협업에 걸림돌이 된다고. 

 

 

 

 




🔗 출처 

 

 

Contact : motop68@gmail.com (개인 이메일 주소입니다! 편하게 컨택 해주세요)

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31