프로그램이나 어떤 특정한 것을 개발하는 중에 발생했던 문제점들을
정리해서 상황에 따라 간편하게 적용해서 쓸 수 있는 것을 정리하여
특정한 "규약"을 통해 쉽게 쓸수 있는 형태로 만드는 것
하나의 애플리케이션, 프로젝트를 구성할 때
그 구성 요소를 세가지의 역할로 구분한 패턴
모델을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달
데이터와 사용자 인터페이스 요소들을 잇는 다리 역할
사용자가 데이터를 클릭하고 수정한느 것에 대한 이벤트를 처리하는 부분
애플리케이션의 정보, 데이터를 나타냄
데이터베이스, 상수, 초기화 값, 변수 등을 뜻함
정보들의 가공을 책임지는 컴포넌트
사용자 인터페이스 요소
하나의 역할만 담당해서 처리를 효율적으로 하기 위함
서로 분리되어 각자의 역할에 집중하여 유지 보수성, 확장성, 유연성 증가, 중복 제거