iOS Study/iOS Design Pattern 1

MVVM(Model-View-ViewModel) ๋””์ž์ธ ํŒจํ„ด

1. MVVM ๋””์ž์ธ ํŒจํ„ด(์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ณ ํŒจํ„ด) Model-View-ViewModel ํ˜•ํƒœ์˜ ๋””์ž์ธ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. 1.1. Model Model์€ ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๋ฅผ ์ •์˜ํ•˜๊ณ  ViewModel์—๊ฒŒ ๊ฒฐ๊ณผ๋ฅผ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. View(ViewController)๋Š” Model์— ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. 1.2. View(ViewController) View๋Š” iOS์—์„œ์˜ ViewController์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. View๋Š” ์‚ฌ์šฉ์ž์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํ†ตํ•ด ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ViewModel์—๊ฒŒ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ViewModel์ด ์—…๋ฐ์ดํŠธ ์š”์ฒญํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ํ™”๋ฉด์— ๋ณด์—ฌ์ฃผ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. 1.3. ViewModel ViewModel์€ ์‚ฌ์šฉ์ž์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ View๊ฐ€ ๋ณด๋‚ด์ฃผ๋ฉด ๊ทธ์— ๋งž๋Š” Business Logic์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ..