Publishers.Reduce
์ ๋ค๋ฆญ ๊ตฌ์กฐ์ฒด | ์ ๋ฌ๋ฐ์ ๋ชจ๋ ์์์ ํด๋ก์ ๋ฅผ ์ ์ฉํ๊ณ , ์์์ ํ๋ฅด๋ Publisher๊ฐ ์ข ๋ฃํ ๋ ์ถ์ ๋ ๊ฐ์ ๋ด๋ Publisher
์ด๋์ ๋ผ์ด์ ๋ ์ธ ๊ฐ์ ์ธ์๋ฅผ ๋ฐ๋๋ค.
upstream
: ์์์ ํ๋ฅด๋ Publisherinitial
: ํด๋ก์ ์ ์ฒซ ๋ฒ์งธ ํธ์ถ์ ์ ๊ณต๋๋ ์ด๊ธฐ ๊ฐnextPartialResult
: ์๋ก์ด ๊ฐ์ ๋ด๊ธฐ ์ํด ์ด์ ๊น์ง ์ถ์ ๋ ๊ฐ๊ณผ ์์ Publisher์ ๋ค์ ์์๋ฅผ ์ทจํ๋ ํด๋ก์
์์ Publisher๊ฐ ๋ฐฐ์ถํ ํญ๋ชฉ์ ํจ์๋ฅผ ์์๋๋ก ์ ์ฉํ๊ณ ํจ์๋ฅผ ์ฐ์ฐํ ํ ์ต์ข ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ค.
Swift์ reduce
ํจ์์ ๊ฐ์ ๋์์ ํ๋ค.
์์ Publisher์ ํ๋ฅด๋ ๋ชจ๋ ๊ฐ์ ๋ชจ์ ์ด๋ ํ ํ๋์ ๊ฐ์ ๋ด๊ณ ์ถ์ ๋ ์ฌ์ฉํ ์ ์๋ค.
reduce
์คํผ๋ ์ดํฐ์ ๊ด๋ จ์ด ์๋ค.
์์ Publisher๊ฐ 1, 2, 3์ ๊ฐ์ ์ฐจ๋ก๋๋ก ๋ด๋๋ฐ, ์ด๊ธฐ ๊ฐ์ 0์ผ๋ก ํ๊ณ ์ค์ฒฉ๋ ์ด์ ์ ๊ฐ๊ณผ ์๋ก์ด ๊ฐ์ ๋ง์ ์ฐ์ฐ์ ํ๋ ํด๋ก์ ๋ฅผ ์ ๊ณตํ์ฌ ์์๋ฅผ ๋ชจ๋ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ๋ด๋๋ก ํ์๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก 6์ ๊ฐ์ ๋ด๊ณ ์ข ๋ฃํ๋ค.
RxSwift
reduce
์คํผ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์๋ค.
ReactiveSwift
reduce
์คํผ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์๋ค.
์ฐธ๊ณ
Last updated
Was this helpful?