728x90
반응형
Monad (모나드)
=> flatMap의 파라미터 이름
형태
(값) ->박스 (값)
=> 값을 받아서 박스 값을 리턴한다. ( 값 ->박스 )
* flatMap 자체는 async 할 수도 sync 할 수도 있다. ( RxJava는.. 이상하다.)
Functor
형태
(값) -> (값)
=> 값을 받아서 값을 리턴한다. ( 값 ->값 )
=> 모나드와의 차이
일반적으로 우리가 사용하는 형태는 Functor 이다.
* Functor자체는 async 할 수도 sync 할 수도 있다. (역시 RxJava는.. 이상하다.)
CPS의 단점
- 끝없는 들여쓰기.
- 이해하기 어려움
CPS의 장점
- 모든 제어 흐름을 만들 수 있다.
* 코틀린 컴파일러가 컨티뉴에이션과, 상태머신을 만들어낸다.
728x90
반응형
'Android 공부 > Coroutine' 카테고리의 다른 글
[XX캠퍼스] 20.Kotlin Coroutines & Flow ( 채널 버퍼링 ) (0) | 2022.07.29 |
---|---|
[XX캠퍼스] 19.Kotlin Coroutines & Flow ( 팬아웃, 팬인 ) (0) | 2022.07.29 |
[XX캠퍼스] 18.Kotlin Coroutines & Flow ( 채널 파이프 라인 ) (0) | 2022.07.29 |
[XX캠퍼스] 17.Kotlin Coroutines & Flow ( 채널 기초 ) (0) | 2022.07.29 |
[XX캠퍼스] 16.Kotlin Coroutines & Flow ( 런칭 ) (0) | 2022.07.27 |