MVC pattern

Havi·2023년 7월 8일
0

Knowledge

목록 보기
1/15

What?

Model-View-Controller (MVC)는 소프트웨어 디자인 패턴이다.
사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.

Controller

  • 컨트롤러를 통해 모델에 명령을 보냄으로써 모델의 상태를 변경할 수 있다.
  • 사용자의 입력 처리와 흐름제어를 담당한다. Model과 View를 연결시켜주는 역할

Model

  • 모델은 모델의 상태에 변화가 있을 때 컨트롤러와 뷰에 이를 통보한다.
  • 백그라운드에서 동작하는 비즈니스 로직(데이터) 처리 역할

View

  • 사용자가 볼 결과물을 생성하기 위해 모델로부터 정보를 얻어 온다.
  • 정보를 화면으로 보여주는 역할

Why?

  • 비즈니스 로직과 UI로직을 분리하여 유지보수를 독립적으로 수행가능하다.
  • Model과 View가 다른 컴포넌트들에 종속되지 않아(독립적) 애플리케이션의 확장성, 유연성에 유리하다.
  • 중복 코딩의 문제점을 제거한다.

How?

웹에서 MVC 패턴을 적용하면 다음과 같이 적용이 된다고 한다.
1. [Users] 사용자가 웹사이트에 접속
2. [Manipulaters] controller는 사용자가 요청한 웹페이지를 서비스하기 위해서 모델을 호출한다.
3. [Return] model은 DB나 파일과 같은 데이터 소스를 제어한 후 그 결과를 return 한다.
4. [Updates] controller는 model이 리턴한 결과를 View에 반영한다.
5. [Sees] 데이터가 반영된 View는 사용자에게 보여진다.

References

https://cocoon1787.tistory.com/733

profile
집중집중

0개의 댓글