견고하고 오랜 테스트를 거친 구조라는 이유로 많은 프레임워크 개발자가 이 MVC 패턴의 변형된 형태를 사용해 왔습니다. 현대 웹 프레임워크를 어떻게 설계하고 만들었는지 알고 싶다면 에멧 스콧 주니어(Emmit A. Scott Jr)가 쓴 <SPA Design and Architecture(SPA 디자인과 설계)>(Manning Publications, 2015)를 확인하세요.
현대 소프트웨어 개발에서 MVC 패턴은 단일 애플리케이션의 한 부분으로 쓰이며, 코드 역할을 분리하는 훌륭한 메커니즘을 제공합니다. MVC 패턴을 사용하는 웹 사이트에서는 모든 요청이 클라이언트에서 서버로 향하는 정보 흐름의 시작을 담당하고, 반대로 데이터베이스는 서버에서 클라이언트로 향하는 데이터 흐름의 시작을 담당합니다. 이 과정에서 시간이 많이 소요되고, 자원 집약적이 되며, 반응형 사용자 경험을 제공하지 못합니다.
몇 년 동안 개발자들은 비동기식 웹 요청과 클라이언트 단 MVC를 사용하여 서버로 전송된 요청들이 차단되지 않고 응답 없이 계속 진행하는 방식으로 웹 기반 애플리케이션의 상호 작용성을 높여 왔습니다.
하지만 웹 애플리케이션이 데스크톱 역할을 대신하기 시작하면서 클라이언트/서버의 소통을 마냥 기다리는 것은 사용자에게 애플리케이션이 비정상적으로 작동하는 것처럼 보일 수 있습니다. 다음에 알아볼 패턴으로 이를 해결할 수 있습니다.