[Flutter] Flutter에서 상수 클래스와 const 생성자 완벽 정리

📖 Flutter에서 상수 클래스와 const 생성자 완벽 정리
🔒 불변 객체 (Immutable Object)
- 객체 생성 후 속성이 변경 불가능한 객체이다.
- Dart에서 불변 객체는 상수 객체(
Const Object) 생성 가능하다.
🗂️ 상수 클래스 (Constant Class)
- 앱 전체에서 재사용되는 고정 값을 한 곳에 모아둔 클래스이다.
- 색상, 문자열, 스타일 값을 예시로 들 수 있다.
🏷️ 상수 생성자 (Const Constructor)
- 생성자 앞에
Const 키워드를 붙여 선언한다.
- 모든 인스턴스 변수는
final 이어야 한다.
- 생성된 후 상태 변경 불가하는 불변성 보장이다.
📦 상수 객체 (Const Object)
- 상수 생성자를 통해 생성된 객체는 컴파일 타임 상수로 앱 실행 전에 이미 값이 확정된다.
- 동일한 값으로 생성 시 인터닝, 캐싱 유사처럼 객체 재사용한다.
⚡️ 사용 목적
🖼️ Flutter에서의 활용
- 변하지 않는 설정값, 색상, 스타일, 정적인 위젯에 활용한다.
Const 위젯은 setState 호출 시에도 빌드 재실행 안한다.
- 효과로 불필요한
rebuild 감소, 메모리 사용량 절감, 위젯 트리 재구성 효율 상승 효과가 있다.