상태 호이스팅 2

Flutter app 상태 관리 - state hoisting

안녕하세요.이번 포스팅에서는 flutter app에서 상태를 관리하는 방법 중 하나인 state hoisting에 대해 간단히 알아보겠습니다. 언어: dartIDE: Android StudioFramework: FlutterTest device: AndroidState HoistingReact, Flutter와 같은 선언형 UI 프레임워크에서 주로 사용되는 개념입니다. 이는 상태(state: UI에 영향을 미치는 변경 가능한 data)를 더 상위의 컴포넌트나 컨텍스트로 이동시켜 여러 하위 컴포넌트에서 공유할 수 있도록 하는 것을 말합니다. State Hoisting은 다음과 같은 경우에 주로 사용됩니다.두 개 이상의 컴포넌트가 동일한 상태에 접근해야 할 때: 여러 곳에서 상태를 중복 관리하는 대신, 상태..

안드로이드 컴포즈(jetpack compose) - state hoisting

안녕하세요. 이번 포스팅에서는 상태 호이스팅 패턴을 안드로이드 컴포즈를 통해 구현해 보겠습니다. state hoisting 패턴은 단방향 데이터 흐름과 관계가 있습니다. 이벤트가 발생하면 상태를 필요에 맞게 변경하고 UI에 표시하는 과정을 하나의 방향으로만 흐르도록 설계하는 것입니다. 여기에 state hoisting을 적용한다면, 이벤트가 발생 -> 이벤트를 뷰모델까지 올려줌 -> 뷰모델에서 필요한 기능을 처리 -> 상태를 변경 -> UI가 이에 맞게 변경되는 식으로 동작하게 됩니다. 간단한 예제를 작성해 보겠습니다. 언어: 코틀린 sdk vsersion - compile: 33 - min: 21 - target: 33 가장 먼저 뷰모델을 작성합니다. ComposeViewModel.kt @HiltVie..

반응형