Flutter에는 두 가지 근본적인 위젯 유형이 있습니다: StatelessWidget(불변이며 변경되는 내부 state가 없음)과 StatefulWidget(변경 가능한 state를 보유 및 갱신하며, state가 변경되면 다시 빌드됨). 올바른 것을 선택하는 것은 Flutter UI를 만드는 데 근본적입니다.
StatelessWidget — 변하는 state 없음
// StatelessWidget: 입력에 기반해 UI만 기술 (불변, 내부 state 없음)
class Greeting extends StatelessWidget {
final String name;
const Greeting(this.name);
@override
Widget build(BuildContext context) {
return Text('Hello, $name'); // UI는 오직 입력에만 의존, 스스로 변하지 않음
}
}
// → 스스로 변하지 않는 UI에 사용 (정적 콘텐츠, 입력 기반 표시)
