MVC 패턴이란
업데이트:
MVC패턴은 디자인 패턴 중 하나로, Model, View, Controller의 약자이다.
하나의 프로젝트를 구성할 때 그 구성 요소를 세가지의 역할로 구분한 패턴이다.
디자인 패턴 : 소프트웨어 개발 방법을 공식화 한 것
Model
Model은 애플리케이션의 정보,데이터를 나타낸다.
모델은 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 되며, 모델은 재사용이 가능해야 하며 다른 인터페이스에서도 변하지 않아야 한다.
View
View는 데이터를 기반으로 사용자들이 볼 수 있는 화면으로
input텍스트,체크박스 등 데이터 및 객체의 입력, 출력을 담당하는 사용자 인터페이스 요소를 나타낸다.
Controller
Controller는 데이터와 사용자인터페이스 요소들을 연결하는 다리 역할로
사용자가 데이터를 클릭하고,수정하는 것에 대한 이벤트들을 처리하는 부분이다.
전체적으로 사용자의 요청을 컨트롤러가 전달받고, 컨트롤러는 모델에게 사용자 요청에 대한 검색 결과 데이터를 요청한다.
모델은 다시 컨드롤러에게 해당 데이터를 전달해 주고, 컨트롤러는 그 데이터를 뷰에게 전달해준다.
뷰는 전달받은 데이터를 사용자에게 보여준다.
MVC 패턴의 규칙을 지키면서 코딩하는 방법
- Model은 Controller와 View에 의존하지 않아야 된다.
( Model 내부에 Controller와 View에 관련된 코드가 있으면 안 된다.)
Model은 데이터와 관련된 부분이기 때문에 언제든 깔끔하고 정제된 데이터를 꺼내 쓸 수 있어야 한다. - View는 Model에만 의존해야하고, Controller에는 의존하면 안된다.
View 내부에 Model 코드만 있을 수 있고, Controller의 코드가 있으면 안된다. - View가 Model로부터 데이터를 받을 때는, 사용자마다 다르게 보여주어야 하는 데이터에 대해서만 받아야 한다.
모든 사용자에게 똑같이 보여져야 하는 부분들은 모델로부터 받지 않고, View가 자체적으로 가지고 있어야 한다. - Controller 내부에는 Model과 View의 코드가 있을 수 있다.
컨트롤러는 모델과 뷰의 중개자 역할을 하면서 전체 로직을 구성하기 때문이다. - View가 Model로부터 데이터를 받을 때 반드시 Controller에서 받야아 한다.
뷰가 데이터를 받을 때 controller 코드 안에서 데이터를 전달 받는다.
공유하기
Twitter Google+ LinkedIn
댓글남기기