▶ 사용자 인터페이스, 데이터 및 논리 제어를 구현하는 데 널리 사용되는 소프트웨어 디자인 패턴입니다.
▶ 프로그램이나 어떤 특정한 것을 개발하는 중에 발생했던 문제점들을 정리해서 상황에 따라 간편하게 적용해서 쓸 수 있는 것을 정리하여 특정한 규약을 통해 쉽게 쓸 수 있는 형태로 만든 것입니다.
▶ 소프트웨어의 비즈니스 로직과 화면을 구분하는 데 중점을 둠으로써 “관심사 분리”를 하고 더 나은 업무의 분리와 향상된 관리를 제공해줍니다.
▶ 모델 : 데이터와 비즈니스 로직을 관리 / 애플리케이션의 정보, 데이터를 나타냄
▶ 뷰 : 레이아웃과 화면을 처리 / 앱의 데이터를 보여주는 방식을 정의 / 데이터 및 객체의 입력, 출력을 담당
▶ 컨트롤러 : 명령을 모델과 뷰 부분으로 라우팅 / 앱의 사용자로부터 입력에 대한 응답으로 모델 또는 뷰를 업데이트하는 로직을 포함
[이해를 위한 관계 다이어그램]
위의 내용은 각종 블로그를 참고하여 작성하였습니다.