StateFlow 2

[Android] LiveData란 (vs StateFlow)

LiveData 란? 관찰 가능(observing)한 데이터 홀더 객체로,Activity, Fragment, Service 등의 앱 구성요소의 수명 주기(LifecycleOwner)를 인식한다. 그리고 수명 주기 인식을 통해 "활동 수명 주기 상태"에 있는 앱 구성요소 관찰자(observer)만 업데이트가 가능하다. LiveData의 이점관찰자(Observer) 패턴LiveData는 데이터가 변경될 때 Observer 객체에게 알리며, 이러한 관찰자 패턴으로 데이터가 변경될 때마다 UI를 자동으로 업데이트시킬 수 있다.생애 주기 인식LiveData의 Observer는 Lifecycle 객체와 결합되어 있어 연결된 생명주기가 종료되면 자동으로 삭제된다.관찰자 수명주기가 비활성화 상태(backstack 등..

Android/학습 2025.07.19

[Kotlin] Coroutine Flow란, 그리고 Flow, StateFlow, SharedFlow..

Coroutine Flow란?Flow는 Kotlin Coroutne 기반의 비동기 데이터 스트림 처리 도구이다. 데이터 스트림은 시간 흐름에 따라 연속적으로 발생하는 데이터를 순차적으로 처리하는 개념인데, Java의 Stream과 비슷한 개념이라고 생각하면 된다.Kotlin(함수형 언어)을 자주 사용하는 입장에서는 사실 익숙한 개념이다. Java의 Stream에 대한 간단한 예시List numbers = Arrays.asList(1, 2, 3, 4, 5);numbers.stream() .filter(n -> n % 2 == 0) // 짝수 필터링 .map(n -> n * n) // 제곱 .forEach(System.out::pr..

Android/학습 2025.07.06