๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŽ iOS/iOS

[Library] ReactiveX์— ๋Œ€ํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ณด๊ธฐ

by Fomagran ๐Ÿ’ป 2020. 12. 24.
728x90
๋ฐ˜์‘ํ˜•

์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค.

 

์ €๋„ ์š”์ฆ˜์— RxSwift๋ฅผ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ์š”.

 

RxSwift์—์„œ Rx๋ฅผ ํ‘œํ˜„ํ•˜๋Š” Reactive eXtension์— ๋Œ€ํ•ด์„œ ๋จผ์ € ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ณด๋ฉด ์ข‹์„ ๊ฑฐ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์—

 

๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.


Reactive X๋ž€?

Microsoft์—์„œ "Volta" ๋ผ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰์ค‘์— ๋งŒ๋“ค์–ด์ง„ API์ž…๋‹ˆ๋‹ค.

 

Reactive X๋ฅผ ํ•œ๋งˆ๋””๋กœ ์ •์˜ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

"๊ด€์ฐฐ ๊ฐ€๋Šฅํ•œ ํ๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๋น„๋™๊ธฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์œ„ํ•œ API"

 

๋˜ํ•œ ์˜ต์ €๋ฒ„ ํŒจํ„ด๊ณผ ๋ฐ˜๋ณต์ž ํŒจํ„ด์„ ํ•ฉ์ณ๋†“์€ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

 

ํ”„๋ก ํŠธ์—”๋“œ ๋ฐฑ์—”๋“œ ์–ด๋””์—์„œ๋‚˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ 

 

JavaScript,Swift,Python ์–ด๋Š ํ”Œ๋žซํผ์ด๋“ ์ง€ ๊ต์ฐจ๊ฐ€ ์‰ฝ๊ฒŒ ์ด๋ฃจ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค๊ณ ํ•˜๋„ค์š”.

์žฅ์ 

4๊ฐ€์ง€๋กœ ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

1. ๊น”๋”ํ•œ ์ž…๋ ฅ/์ถœ๋ ฅ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋‹ค.

 

2. ์ฝ”๋“œ๋ฅผ ๋‹จ ๋ช‡์ค„์œผ๋กœ ์ค„์—ฌ์ค€๋‹ค.

 

3. ์—๋Ÿฌ๋ฅผ ํ•ธ๋“ค๋งํ•˜๊ธฐ์— ์ข‹์€ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ฐ–์ถ”๊ณ  ์žˆ๋‹ค.

 

4. ์“ฐ๋ ˆ๋”ฉ,๋™๊ธฐ,๋น„๋™๊ธฐ ์ด์Šˆ๋ฅผ ์ถ”์ƒํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

ํ˜„์žฌ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์—…๋“ค

๋งˆ์ดํฌ์†Œํ”„ํŠธ,๋„ทํ”Œ๋ฆญ์Šค,๊นƒํ—ˆ๋ธŒ,์—์–ด๋น„์•ค๋น„ ๋“ฑ ์•„์ฃผ ํฌ๊ณ  ์œ ๋ช…ํ•œ ๊ธฐ์—…๋“ค์ด ์ด๋ฏธ ReactiveX๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜๋„ค์š”.

 

์ฃผ์š” ๊ธฐ๋Šฅ

  • Observable
  • Operators
  • Single
  • Subject
  • Scheduler

์ฃผ์š” ๊ธฐ๋Šฅ์€ ๋‚˜์ค‘์— ๋”ฐ๋กœ ํฌ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ด์„œ ํ•˜๋‚˜ํ•˜๋‚˜ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€