๊ณต๋ถ ๋ฐฐ๊ฒฝ
RxSwift๋ฅผ ๊ณต๋ถํ๋ ค ํ๋๋ฐ ๊ทธ์ ์ ๋จผ์ ๋น๋๊ธฐ์ ๋ํด ์ ์๊ณ ์์ด์ผ ํ ๊ฒ ๊ฐ์๋ค. ๋๊ธฐ์ ๋น๋๊ธฐ๋ฅผ ๋ฐฐ์ ์ง๋ง ์ ๋๋ก ์๋ ๊ฒ ๊ฐ์ง ์์ ์ด๋ฒ ๊ธฐํ์ ์ ๋ฆฌ๋ฅผ ํ๊ณ , ํจ๊ป ์ง๋ ฌ๊ณผ ๋์์ฑ๋ ๊ณต๋ถํด์ 4๊ฐ์ง์ ์ฐจ์ด๋ฅผ ๋ถ๋ช ํ ์๊ณ ์ ํ๋ค.
๊ธฐ๋ณธ
์ผ๋จ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ์ ๋์๋ ์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์์ ์ด ์ฒ๋ฆฌ๋๋ค. ๋ฉ์ธ ์ค๋ ๋๊ฐ ๋ชจ๋ ์ผ์ ์ ๋ถ ์ฒ๋ฆฌํ๊ฒ ๋์ด ํ๋ฉด ๋ก๋๊ฐ ์ค๋ ๊ฑธ๋ฆฌ๋ ๋ฑ ๋ฌธ์ ๊ฐ ๋ง๋ค. ์ด๋ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ์ข๊ฒ ๋ง๋ค์ด์ ์ฐ๋ฆฌ๋ ์ฃผ์ํด์ผ ํ ํ์๊ฐ ์๋ค.
๋๊ธฐ์ ๋น๋๊ธฐ
๋๊ธฐ์ ๋น๋๊ธฐ๋ ๋๋ค ๋ค๋ฅธ ์ค๋ ๋๋ก ์์ ์ ๋ณด๋ธ๋ค๋ ๊ณตํต์ ์ด ์๋ค. ๋์ ์ฐจ์ด์ ์ ์์ ์ ๋ณด๋ด๋๊ณ ๊ธฐ๋ค๋ฆฌ๋๋(Block) ๋๋ ๋ค์์ผ๋ก ํด์ผํ๋ ์์ ์ ์ํํ๋๋์ ์ฐจ์ด์ด๋ค.
๋๊ธฐ๋ ์์ ์ ๋ณด๋ด๋๊ณ ๊ทธ ์์ ์ด ๋๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฐ๋ค. ๋ง์ฝ Task1์ด 10์ด ์ ๋ ๊ฑธ๋ฆฐ๋ค๋ฉด, ๋ฉ์ธ ์ค๋ ๋๋ 10์ด๊ฐ ์ง๋ ํ์์ผ Task2๋ฅผ ์ํํ๋ค.
๋น๋๊ธฐ๋ ์์ ์ ๋ณด๋ด๋๊ณ ๋ฐ๋ก ๋ค์ ์์ ์ ์์ํ๋ค. Task1์ ๋ณด๋ธ ํ ๋ฐ๋ก Task2๋ฅผ ์ํํ๋ ๊ฒ์ด๋ค.
๊ทธ๋ผ ๊ธฐ๋ณธ์ผ๋ก ์์ ํ๋ ๊ฒ๊ณผ ๋๊ธฐ๋ก ์์ ํ๋ ๊ฒ์ ์ฐจ์ด๋ ๋ญ๊น? ์์ ์์ ์๊ฐ์ ์์ด์๋ ์๋ค. ๋ฉ์ธ ์ค๋ ๋๋ ๊ธฐ๋ณธ์ผ๋ก ์์ ํ๋ ๋๊ธฐ๋ก ์์ ํ๋ ๋๊ฐ์ด ์ค๋ ๊ฑธ๋ฆด ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ์๊ฐ์ ์ ์ฝํ ์ ์๊ณ ์ข์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ค ์ ์๋ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ด ์ค์ํ ๊ฒ์ด๋ค.
์ง๋ ฌ๊ณผ ๋์์ฒ๋ฆฌ
์ง๋ ฌ๊ณผ ๋์์ฒ๋ฆฌ๋ "์ฌ๋ฌ ๊ฐ์ ์ค๋ ๋๊ฐ ์์ ๋ ๋ช ๊ฐ์ ์ค๋ ๋๋ก ์์ ์ ๋ถ์ฐํ ๊ฒ์ธ๊ฐ" ์ด๊ฒ ๋ฐ๋ก ๊ตฌ๋ถ์ ์ด๋ค.
์ง๋ ฌ์ ์ฌ๋ฌ ๊ฐ์ ์ค๋ ๋๊ฐ ์๋๋ผ๋ ๋จ ํ ๊ฐ์ ์ค๋ ๋์๋ง ์์ ์ ํ ๋นํ๋ค. ์ด๋ ์์ ๋ค์ด ์๊ฐ ์์๋๋ก ์ด๋ฃจ์ด์ ธ์ผ ํ ๋ ์ฌ์ฉ๋ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค๋ฉด ์ฒซ ๋ฒ์งธ ๊ฐ์ ํ ๋น๋ฐ๊ณ ๋ ๋ฒ์งธ ๊ฐ์ ํ ๋น๋ฐ์์ผ ๋๋๊ธฐ ์ฐ์ฐ์ ํ ์ ์๋ค.
๋์์ฒ๋ฆฌ๋ ์ฌ๋ฌ ๊ฐ์ ์ค๋ ๋๋ก ์์ ์ ๋ถ์ฐํ์ฌ ํ ๋นํ๋ ๊ฒ์ด๋ค. ์ด ๋ถ์ฐ์ ๋ณดํต ์์คํ ๋ด์์ ์ฒ๋ฆฌ๋๋ค. ๋์์ฒ๋ฆฌ๊ฐ ์ฌ์ฉ๋ ๋๋ ์ธ์ ์ผ๊น? ์ธ์คํ๊ทธ๋จ์ ์์๋ก ๋ค์ด๋ณด์๋ฉด, ํ๋กํ ํ๋ฉด์ ๋ค์ด๊ฐ๊ฒ ๋๋ฉด ์๋จ์๋ ์ฌ์ฉ์ ์ ๋ณด๊ฐ ์๊ณ ์๋์๋ ์ฌ์ง ํผ๋๊ฐ ๋ณด์ธ๋ค. ์ฌ์ง์ ๋ก๋๊ฐ ์ค๋ ๊ฑธ๋ฆฌ๋๊น ์ฌ์ฉ์ ์ ๋ณด์ ์ฌ์ง ํผ๋๋ฅผ ๊ฐ๊ฐ ์๋ฒ์์ ์ ๋ฌ ๋ฐ๊ฒ ๋๋ฉด ๋นจ๋ฆฌ ์์ ์ด ๋๋๋ ๋ฐ์ดํฐ๋ ๋น ๋ฅด๊ฒ ํ๋ฉด์ ์ ์ฉ๋ ๊ฒ์ด๋ค. ์ด๋ ์ฌ์ฉ์ ๊ฒฝํ์ ์ข๊ฒ ๋ง๋ค ๊ฒ์ด๋ค. ์ฆ, ์ฌ์ฉ์ ์ ๋ณด ์๋ฒ ์ฐ๊ฒฐ ์์ ๊ณผ ์ฌ์ง ํผ๋ ์๋ฒ ์ฐ๊ฒฐ ์์ ์ด ์๋ก ๋ค๋ฅธ ์ค๋ ๋์์ ๋์์ฒ๋ฆฌ๋๋ ๊ฒ์ด๋ค.
๋๊ธฐ์ ๋น๋๊ธฐ / ์ง๋ ฌ๊ณผ ๋์์ฑ
๋๊ธฐ์ ๋น๋๊ธฐ ๊ทธ๋ฆฌ๊ณ ์ง๋ ฌ๊ณผ ๋์์ฑ์ ๊ตฌ๋ถ์ ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ํ ๋ฌถ์์ผ๋ก ์๊ธฐ๋ ์ ์๋ค. ๋๋ ์ด ๋์ ๊ตฌ๋ถํ์ง ๋ชปํด ๋ง์ด ํท๊ฐ๋ ธ๋ ๊ฒ ๊ฐ๋ค. ๋ฐ๋ผ์ ๋ ๋ฌถ์์ ์ฐจ์ด๋ฅผ ์ ์ดํดํ๋๊ฒ ์ค์ํ ๊ฒ ๊ฐ๋ค!
๋๊ธฐ์ ๋น๋๊ธฐ - ๋ฉ์ธ ์ค๋ ๋์ ์ด๋ค ์ค๋ ๋๊ฐ ์์ ๋, ๋ณด๋ด๊ณ ๊ธฐ๋ค๋ฆด ๊ฒ์ด๋ ๋๋ ๋ณด๋ด๊ณ ๋ค๋ฅธ ์์ ํ ๊ฒ์ด๋
์ง๋ ฌ๊ณผ ๋์์ฒ๋ฆฌ - ์ฌ๋ฌ ๊ฐ์ ์ค๋ ๋๊ฐ ์์ ๋ ๋ช ๊ฐ์ ์ค๋ ๋๋ก ์์ ์ ๋ถ์ฐํ ๊ฒ์ด๋
๋๊ธฐ์ ๋น๋๊ธฐ / ์ง๋ ฅ๊ณผ ๋์์ฒ๋ฆฌ
iOS ๋น๋๊ธฐ