Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Design Pattern
- builderPattern
- factory method
- F
- 추상팩토리패턴
- 싱글톤
- designPattern
- 디자인패턴 #
- 팩토리 메소드
- Observer Pattern
- a
- ㅋㅁ
- 빌터패턴
- ㅓ
- 함수형프로그래밍
- Abstract Factory
- 코틀린
- 추상 팩토리
- 프로토타입 패턴
- El
- 디자인패턴
- Kotlin
- 옵저버 패턴
- Singleton
- Functional Programming
- r
- PrototypePattern
Archives
- Today
- Total
오늘도 더 나은 코드를 작성하였습니까?
Flow를 사용한 스타일 혼합 본문
Flow의 가장 흥미로운 기능 중 하나는 suspend 함수를 최고 수준으로 지원한다는 점입니다. flow 빌더와 거의 모든 transform은 정지 함수를 호출할 수 있는 suspend 연산자를 노출합니다. 따라서 네트워크 및 데이터베이스 호출에 관한 기본 안전성이 보장될 뿐만 아니라 flow내에서 일반 정지 함수 호출을 사용하여 여러 비동기 작업을 조정할 수도 있습니다.
실제로, 선언적 transform을 명령 코드와 자연스럽게 혼합할 수 있습니다. 예에서 볼 수 있듯이 추가 변환을 적용하지 않고 일반 map 연산자 내부에서 여러 비동기 작업을 조정할 수 있습니다. 많은 사례에서 이 방법을 사용하면 완전한 선언적 접근 방식보다 코드가 훨씬 더 단순해질 수 있습니다.
Flow를 시작할 때 suspend 함수(transform)을 사용하여 코드를 단순화할 수 있는 방법을 신중하게 고려하세요.
많은 경우 map, onStart, onCompletion 같은 연산자 내에서 정지 작업을 사용하면 비동기 코드를 자연스럽게 표현할 수 있습니다.
combine, mapLatest, flatMapLatest, flattenMerge, flatMapMerge 같은 친숙한 Rx 연산자는 Flow에서 동시 실행을 조정하는 데 사용하는 것이 가장 좋습니다.
'Coroutine > coroutineFlow' 카테고리의 다른 글
Stateflow LiveData (0) | 2021.06.02 |
---|---|
Flow를 사용한 동시 실행 제어 (0) | 2021.05.31 |
단일값을 보내는 flow 와 flow의 결합. (0) | 2021.05.31 |
flow을 사용한 비동기 작업 (0) | 2021.05.31 |
flow의 실행 방법 (0) | 2021.05.31 |