Flow 처리는 데이터 스트림을 변환, 필터링, 결합하는 등의 작업을 통해 원하는 형태로 가공하는 과정입니다. 이는 반응형 프로그래밍의 핵심 개념으로, 안드로이드 개발에서 UI 상태 관리나 데이터 처리에 매우 유용합니다.주요 Flow 처리 함수들1. map - 데이터 변환의 핵심map 함수는 Flow의 각 원소를 다른 값으로 변환할 때 사용하는 가장 기본적이면서도 중요한 연산자입니다. 원본 데이터를 유지하면서 새로운 형태의 데이터로 변환하는 역할을 합니다. suspend fun main() { flowOf(1, 2, 3) .map { it * it } // 각 원소를 제곱 .collect { print(it) } // 149} 동작 원리:상위 Flow에서 각 원소가 방출될..
Flow는 단순히 데이터를 변환하고 필터링하는 것을 넘어서, 생명주기의 각 단계에서 부가적인 작업을 수행할 수 있는 강력한 함수들을 제공합니다. 이러한 생명주기 함수들은 실제 안드로이드 개발에서 로깅, UI 상태 관리, 리소스 정리 등에 필수적으로 사용됩니다. onEach - 각 원소마다 부가 작업 실행onEach는 Flow의 각 원소가 방출될 때마다 지정된 함수를 실행하는 연산자입니다. kotlinsuspend fun main() { flowOf(1, 2, 3, 4) .onEach { println("Processing: $it") } .collect { println("Collected: $it") }} 출력:Processing: 1Collected: 1Process..
채널interface SendChannel { supsend fun send(element: E) fun close(): Boolean //...}interface ReceiverChannel { suspend fun receive(): E fun cancel(cause: CancellationException? = null) //...}interface Channel : SendChannel, ReceiveChannel SendChannel- 원소를 보내거나(또는 더하거나) 채널을 닫는 용도 ReceiveChannel- 원소를 받을 때(또는 꺼낼 때) 사용 두 인터페이스는 구분되어 있으며, 채널의 진입점을 제한하기 위해 ReceiveChannel이나 SendChannel..