suspend 함수가 단일의 값을 반환시키는 반면, 코루틴에서 flow 는 여러 값들을 순차적으로 방출 시킬 수 있다. 예를들면 flow를 사용하여 데이터베이스의 실시간 업데이트를 받을 수 있다.
StateFlow 와 SharedFlow 는 업데이트 상태를 최적으로 내보내주고, 여러 소비자에게 값을 내보내게 할 수 있도록하는 Flow APIs 이다.
이 게시물에서 flow를 뷰에 노출하는 방법, flow를 수집하는 방법 그리고 특정 요구에 맞는 대처를 배울 수 있다.

Now in Android 앱 아키텍처에 대해 알아보자.
코루틴은 비동기와 병렬성을 순차적으로 짤 수 있는 코드 방법을 제공하고, 플로우는 비동기와 병렬성을 스트림의 형태로 풀 수 있는 형태를 보여준다..
Flow 는 Cold stream 이며, emit 방출하는 코드와 collect 소비하는 코드가 같은 코루틴 내에 실행될 것을 기대한다. -> 이는 데이터 흐름을 순차적으로 보장하고, 데이터 방출 및 수집 간의 상태를 쉽게 추적할 수 있도록 한다. 왜 다른 CoroutineContext에서 emit을 사용할 수 없을까? flow{} 블록 내부 코드는 ...
Cold Flow 는 구독하기 전까진 아무 작업도 수행하지 않는 데이터 스트림입니다. 즉 lazy 하게 동작합니다..
MVVM은 View 와 ViewModel 간의 양방향 데이터 흐름을 허용합니다.View에서 발생한 이벤트는 ViewModel로 전달되고, ViewModel에서 LiveData나 StateFlow 를 통해 상태를 업데이트하여 View 로 다시 전달됩니다.이 과정에서..
