MVC패턴은 디자인 패턴의 하나로 Model, View, Controller의 역할로 구분되는 패턴임.
디자인 패턴의 역할 자체가 어떤 라이브러리가 아닌 개발을 할 때 서로 지키기로 약속한 어떤 틀 또는 규약이기 때문에 MVC패턴도 어떤 틀이라고 생각함.
먼저 모델은 애플리케이션의 정보, 데이터를 나타냄. 즉 데이터베이스에 해당하는 모든것들이 담겨있음.
Model이 갖고있는 규칙이 존재.
사용자 인터페이스 요소를 나타냄. 데이터를 기반으로 실제 유저들이 볼 수 있는 화면.
View가 갖고있는 규칙이 존재.
컨트롤러는 데이터(Model)과 인터페이스(View)를 이어주는 창구 역할을 함.
Controller가 갖고있는 규칙이 존재.
유저가 보는 인터페이스, 데이터베이스와 연동된 데이터 처리, 이 둘을 이어주는 창구인 컨트롤러로 이루어진 MVC패턴을 사용하게 되면 각각의 역할에 집중할 수 있게 됨.
서로의 역할만 집중해 개발을 할 수 있게 되면 유지보수와 확장성이 매우 좋아지며 코드 충돌이 가능성이 매우 낮아짐.
이번 프로젝트를 진행하면서 MVC패턴을 실제로 적용해 봤다. 처음엔 이렇게 까지 쪼개야하나 싶을정도로 쪼개지는 모습을 보고 걱정이 많았는데 막상 개발을 하다보니 오히려 관리하기엔 훨씬 좋은 코드가 된 것 같다.