Skip to content

Latest commit

ย 

History

History
43 lines (31 loc) ยท 2.33 KB

README_Week3.md

File metadata and controls

43 lines (31 loc) ยท 2.33 KB

โœ”๏ธ Operators (์—ฐ์‚ฐ์ž)

  • ๋น„๋™๊ธฐ ์ž…๋ ฅ์„ ๋ฐ›์•„ ๋ถ€์ˆ˜์ž‘์šฉ ์—†์ด return๋งŒ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ํผ์ฆ ์กฐ๊ฐ๋งˆ๋ƒฅ ์‰ฝ๊ฒŒ ๊ฒฐํ•ฉ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.
  • Observable ์ƒ์—์„œ ๋™์ž‘ํ•˜๊ณ  Observable์„ ๋ฆฌํ„ดํ•˜๋ฉฐ ์—ฐ์‚ฐ์ž๋“ค์„ ์—ฐ์†์ ์œผ๋กœ ํ˜ธ์ถœ ๊ฐ€๋Šฅํ•œ ์—ฐ์‚ฐ์ž ์ฒด์ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ์ž๋“ค์ด ์—ฐ์†์œผ๋กœ ์žˆ๋Š” ๊ฒฝ์šฐ ํ˜ธ์ถœ ์ˆœ์„œ์— ๋”ฐ๋ผ ์‹คํ–‰๊ฒฐ๊ณผ ๊ฐ’์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ›  Observable ์ƒ์„ฑ

์ƒˆ๋กœ์šด Observable์„ ์ƒ์„ฑํ•˜๋Š” ์—ฐ์‚ฐ์ž

  • Just : ๊ฐ์ฒด ํ•˜๋‚˜ ๋˜๋Š” ๊ฐ์ฒด ์ง‘ํ•ฉ์„ Observable๋กœ ๋ณ€ํ™˜
  • Of : ๊ฐ€๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ์ˆ˜ ๋งŒํผ์˜ ์š”์†Œ๋ฅผ Observable๋กœ ๋ณ€ํ™˜
  • From : ๋‹ค๋ฅธ ๊ฐ์ฒด๋‚˜ ์ž๋ฃŒ๊ตฌ์กฐ(์˜ˆ: ๋ฐฐ์—ด) ๋ฅผ Observable๋กœ ๋ณ€ํ™˜

๐Ÿ›  Observable ๋ณ€ํ™˜

Observable์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•˜๋Š” ์—ฐ์‚ฐ์ž

  • Map : Observable์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ์— ํ•จ์ˆ˜๋ฅผ ์ ์šฉ

๐Ÿ›  Observable ํ•„ํ„ฐ๋ง

Observable์—์„œ ์„ ํƒ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—ฐ์‚ฐ์ž

  • Filter : ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜
  • First : ๋งจ ์ฒซ ๋ฒˆ์งธ๋‚˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋ฐ์ดํ„ฐ๋งŒ ๋ฐ˜ํ™˜
  • Take : ํ•จ์ˆ˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ •์ˆ˜ ๊ฐ’์„ ์ „๋‹ฌ ๋ฐ›์œผ๋ฉฐ ํ•ด๋‹น ์ˆซ์ž ๋งŒํผ์˜ ๋ฐ์ดํ„ฐ ๋ฐ˜ํ™˜
  • DistinctUntilChanged : ์ด์ „์— ๋ฐฉ์ถœํ•œ ์š”์†Œ๊ฐ’๊ณผ ํ˜„์žฌ์˜ ์š”์†Œ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ์—๋งŒ ๋ฐ์ดํ„ฐ ๋ฐ˜ํ™˜

๐Ÿ›  Observable ๊ฒฐํ•ฉ

์—ฌ๋Ÿฌ ๊ฐœ์˜ Observable๋“ค์„ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•˜๋Š” ์—ฐ์‚ฐ์ž

  • Merge : ๋‹ค์ˆ˜์˜ Observable๋“ค์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•ฉ์ณ ํ•˜๋‚˜๋กœ ๋งŒ๋“ฌ

๐Ÿ›  ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ

  • Catch : ์˜ค๋ฅ˜๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ๋ฐ˜ํ™˜๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ง„ํ–‰ํ•ด onError๋กœ๋ถ€ํ„ฐ์˜ ์˜ค๋ฅ˜๋ฅผ ๋ณต๊ตฌ
  • Retry : onError๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ์˜ค๋ฅ˜์—†์ด ๋™์ž‘ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•˜๋ฉด์„œ ๋‹ค์‹œ ์ง„ํ–‰

๐Ÿ›  Observable ์œ ํ‹ธ๋ฆฌํ‹ฐ

Observable๊ณผ ํ•จ๊ป˜ ๋™์ž‘ํ•˜๋Š” ์—ฐ์‚ฐ์ž

  • Do : Observable์˜ ์ƒ๋ช…์ฃผ๊ธฐ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์—ฌ๋Ÿฌ ์ด๋ฒคํŠธ์—์„œ ์‹คํ–‰๋  ์•ก์…˜์„ ๋“ฑ๋ก
  • ObserveOn : ์˜ต์ €๋ฒ„๊ฐ€ ์–ด๋Š ์Šค์ผ€์ค„๋Ÿฌ ์ƒ์—์„œ Observable์„ ๊ด€์ฐฐํ• ์ง€ ๋ช…์‹œ
  • Subscribe : Observable์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ์™€ ์•Œ๋ฆผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘
  • SubscribeOn : Observable์„ ๊ตฌ๋…ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์Šค์ผ€์ค„๋Ÿฌ๋ฅผ ๋ช…์‹œ

์ข…๋ฅ˜๊ฐ€ ๋„˜ ๋งŽ๊ณ  ํ•˜๋‚˜ํ•˜๋‚˜ ๋‹ค ์•Œ ์ˆ˜๊ฐ€ ์—†์–ด์„œ... ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€ + ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณด๋Š” ๊ฒƒ์ด ๋น ๋ฅผ ๊ฒƒ ๊ฐ™๋‹ค..