본문 바로가기
⌨️flutter

Flutter - LifeCycle(생명주기)

by 덩크냥 2024. 2. 8.

LifeCycle이란?

한 객체가 생성되고 동작 이뤄지고 프로그램 내에서 정리되는 과정까지의 순환.

 

Stateless Widget Lifecycle

Create() -> build() -> dispose

간단하여 효율적이나 한번 빌드되면 그 안의 내용이 바뀌거나 해도 다시 빌드가 되지 않는다.

 

Steteful Widget Lifecycle

create Widget -> Create State<Widget> -> initState() -> build() ->deactivate -> dispose() -> dispose.

추가로

[ build() <-> setState()/didUpdatedWidget() ] 처럼 내용이 변함에 따라 다시 빌드가 되기도 한다.

 

생각보다 상태관리가 쉽지 않다.

다른 Widget간의 상호작용, 

글로벌 변수와 함수에 대한 관리,

시기적절한 dispose / initState 등등

 

-> 상태관리 모델 사용

-Riverpod / BLoC / GetX / Provider / Redux.. 등등