**MVC(Model-View-Controller)**는 애플리케이션을 세 부분 — Model(데이터/로직), View(UI/표현), Controller(입력 처리, 조율) — 으로 분리하는 아키텍처 패턴으로, 관심사 분리를 촉진합니다. 이는 기초적이며 많은 변형(MVP, MVVM)이 있습니다.
세 가지 컴포넌트
MODEL → 데이터와 비즈니스 로직 (핵심: 데이터, 규칙, 상태) — UI와 독립적
VIEW → UI/표현 (사용자에게 데이터를 표시) — 사용자가 보는 것
CONTROLLER → 사용자 입력을 처리, Model과 View 사이를 조율 (요청 처리,
model 갱신, view 선택)
→ 분리: 데이터/로직(Model) ≠ 표현(View) ≠ 입력 처리(Controller)
작동 방식
1. 사용자가 VIEW와 상호작용 (예: 클릭, 제출)
2. CONTROLLER가 입력을 처리 → MODEL(데이터/로직)을 갱신
3. MODEL이 변경됨 → VIEW가 새 상태를 반영하도록 갱신
→ 각 부분이 명확한 책임을 가짐; 서로 분리됨
