꾸매코딩

[용어 정리] MVC 디자인 패턴이란 무엇인가? 본문

CS

[용어 정리] MVC 디자인 패턴이란 무엇인가?

꾸매코더 2021. 8. 14. 15:14
반응형

디자인 패턴

특정 문맥에서 공통적으로 발생하는 문제에 대해 재사용 가능한 해결책이다.

소스나 기계 코드로 바로 전환될 수 있는 완성된 디자인은 아니며, 다른 상황에 맞게 사용될 수 있는 문제들을 해결하는 데에 쓰이는 템플릿이다.

디자인 패턴은 프로그래머가 애플리케이션이나 시스템을 디자인할 때 공통된 문제들을 해결하는 데에 쓰이는 형식화된 가장 좋은 관행이다.  - [위키백과]

MVC란

MVC는 Model-View-Controller의 약자.

하나의 애플리케이션을 구성할 때 그 구성 요소를 세 가지로 구분한 패턴.

사용자 인터페이스로부터 비즈니스 로직을 분리하여,
서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.

 

출처 https://www.essenceandartifact.com/2012/12/


Model (모델)

애플리케이션의 정보, 프로그램에서 사용되는 데이터를 의미.

데이터베이스(DB), 상수, 문자열과 같은 변수 등을 뜻함.

'무엇'을 할지 정의.
 - 뷰, 컨트롤러에 대한 어떠한 정보도 알지 못한다.

 - 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 한다.

 - Evenet 발생 시, 이벤트에 대한 처리 방법을 구현해야 한다. (데이터 간의 이동 및 변경)

 


View (뷰)

사용자들이 볼 수 있도록 출력을 담당하는 부분.

'화면으로 보여주는' 역할
 - 모델, 컨트롤러에 대한 어떠한 정보도 알지 못한다.

 - 모델의 정보를 따로 저장해서는 안된다. (컨트롤러가 보여주라고 요청하면, 보여주기만 하면 된다)

 - Event 발생 시, 이벤트 통지에 대한 처리 방법을 구현해야 한다. (화면상의 변화)

 

 


Controller (컨트롤러)

데이터와 사용자인터페이스 요소를 잇는 다리 역할.

사용자의 클릭 밑 수정 등에 대한 이벤트를 처리하는 부분.

'어떻게' 할지 정의
 - 뷰, 모델 대해 알고 있어야 한다.

 - 뷰, 모델의 변경을 모니터링 해야 한다.

 


참고자료

https://ko.wikipedia.org/wiki/%EB%AA%A8%EB%8D%B8-%EB%B7%B0-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC

 

모델-뷰-컨트롤러 - 위키백과, 우리 모두의 백과사전

모델, 뷰, 컨트롤러의 관계를 묘사하는 간단한 다이어그램. 웹 애플리케이션에서 일반적인 MVC 구성요소 다이어그램 모델-뷰-컨트롤러(model–view–controller, MVC)는 소프트웨어 공학에서 사용되는

ko.wikipedia.org

https://www.essenceandartifact.com/2012/12/

 

Essence and Artifact

Separating the Essencial from the Artificial

www.essenceandartifact.com

https://www.crocus.co.kr/1539

 

Crocus

Beginner와 Developer사이의 Crocus

www.crocus.co.kr

 

반응형