
여러 프로젝트를 수행하고 심지어 풀스텍까지 개발할 동안 항상 마음속 어딘가에서 궁금하던 것이 있었다.
뷰는 왜 뷰일까?
api를 개발하다보면 사실상 클라이언트에게 전달되는 주체는 JSON형태의 데이터들인데(주로 DTO) 왜 이름이 View일까?

그런데 왜 뷰는 뷰일까? 물론 정적 웹페이지를 반환한다면 뷰를 뷰로 부르는게 이상하지 않다.
진짜 사용자/클라이언트에게 웹페이지를 보여주는 것 이니까.
하지만 요즘 개발 트렌드는 주로 api 그리고 프론트엔드(react 등)이 함께 개발된다.
그리고 클라이언트는 프론트엔드를 통해 데이터를 본다. 이와 같이 View라는 의미에는 프론트엔드가 더 적합하다.
나는 이 점이 궁금했다. MVC모델이라면서 뷰의 역할 대부분은 왜 프론트엔드가 하나?
그래서 오늘 조사를 좀 해봤다.
전통적인 웹 앱에서 View는 JSP, Thymeleaf 같은 템플릿으로, Model 데이터를 HTML로 렌더링해 사용자에게 보여주는 식이었지만
API같은 경우 View는 JSON/XML 같은 데이터 구조로, 클라이언트가 받아서 직접 UI를 만들어낸다.
예: {"name": "사과"} → 클라이언트가 JavaScript로
사과
를 생성.
따라서 일부 개발자들은 API에선 View가 없다고 하지만 MVC패턴 관점에서는 응답 데이터의 표현 방식을 뷰로 보는게 일반적이다
