state 관리는 앱이 자신의 **데이터(state)**를 어떻게 관리하고 갱신하며 그 변경을 UI에 반영하는지를 가리킵니다. 앱이 커질수록 state를 잘 관리하는 것이 중요해지며, Flutter는 이를 위한 내장 메커니즘(setState)과 많은 라이브러리(Provider, Riverpod, Bloc)를 제공합니다.
state란
STATE = 변경될 수 있고 UI에 영향을 미치는 데이터:
→ UI state: 체크박스가 체크되었는가? 텍스트 필드에 무엇이 있는가? 메뉴가 열렸는가?
→ 앱 state: 로그인한 사용자, 장바구니의 항목, 가져온 데이터
→ state가 변경되면 UI는 이를 반영하도록 UPDATE되어야 합니다.
로컬 state: setState
// 단일 위젯에 로컬인 state → StatefulWidget + setState (내장, 단순)
setState(() {
count++; // state 변경 → 다시 빌드 트리거 → UI 갱신
});
// → 단일 위젯 내 단순한 LOCAL state에 적합
