MVVM

<aside> ๐Ÿ’ก ํ™”๋ฉด์„ ๋งŒ๋“œ๋Š” ์ฝ”๋“œ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ด MVVM์˜ ํ•ต์‹ฌ!

</aside>

MVC์˜ View์™€ Controller ์‚ฌ์ด์˜ ์˜์กด๋„๊ฐ€ ๋†’๋‹ค๋Š” ๋‹จ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅํ•œ MVVM!

Model - View - ViewModel๋กœ ๋‚˜๋‰จ

View๋Š” ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ View๊ฐ€ ViewModel ๊ฐ’์„ ๊ด€์ฐฐํ•˜์—ฌ ๋ณ€ํ™”๋ฅผ ๋ฐ˜์˜ํ•จ.

์ด๊ฒŒ ๋ฌด์Šจ ๋ง์ด๋ƒ!

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฒ„ํŠผ ํด๋ฆญ์„ ํ–ˆ์„ ๋•Œ ๋‹ค์Œ ์ด๋ฏธ์ง€๊ฐ€ ๋‚˜์˜ค๋Š” ๋™์ž‘์„ ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž

MVC๋Š” ๋ฒ„ํŠผ์ด ๋ˆŒ๋ฆฌ๋ฉด ์ด๋ฏธ์ง€๋ฅผ โ€œ๋ฐ”๊พผ๋‹คโ€์˜ ๊ฐœ๋…์ด์ง€๋งŒ,

MVVM์€ ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ ViewModel์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐ”๋€Œ๊ณ , ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐ”๋€Œ๋‹ˆ ์ด๋ฏธ์ง€๋„ โ€œ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐ”๋€Œ์–ด์ง„๋‹คโ€๋Š” ๊ฐœ๋…์ž„

โ†’ ๊ทธ๋ž˜์„œ View๊ฐ€ ViewModel์„ ๊ด€์ฐฐํ•œ๋‹ค๊ณ  ํ‘œํ˜„!

โ†’ ์ด๋ฅผ ๋„์™€์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ๋ฐ”๋กœ Combine, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ RxSwift ์ธ ๊ฒƒ์ž„!

Untitled