MVC

종류: Architecture

MVC

  • Model: 앱에서 사용되는 데이터(Data)와 그 데이터를 처리하는 로직(Logic)을 포함
  • View: 사용자에게 보여지는 화면(User Interface)을 구성
  • Controller: View에서의 입력에 대해 Model의 Logic을 사용해 처리

Untitled

Apple’s MVC

Untitled

실제 구조

Untitled

  • Distribution - Model과 View가 독립되었지만, View와 Controller가 너무 밀접하게 연관되어있기 때문에 독립성을 확보하지 못함
  • Testability - View와 Controller가 너무 밀접해서, Model만 테스트가 가능함
  • Ease of use - 다른 패턴들에 비해 코드 길이가 적고, 친숙한 아키텍처이기 때문에 개발자들이 쉽게 유지보수 할 수 있음