๊ฐ์ ๋ณด๋ฉด์ ๊ณต๋ถ ์ค์ธ๋ฐ Controller ๋ก ๋ชจ์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌํ๋ ๊ฑฐ ๊ฐ๊ธดํ๋ฐ ์์ง ํ์
์ด ์ ์๋๊ฒ ์
๊ฒ์ํด ๋ณด๋๊น ์น์ MVC ๋น์ทํ๊ฒ ์ฐ๋ ํจํด์ด ์๋ ๊ฑฐ ๊ฐ์๋ฐ ๋ถํธํ๋ค๋ ๊ฑฐ ๊ฐ๋๋ผ๊ณ
๋์์ธํจํด์ผ๋ก ์ฑ๊ธํด, ์ํ๊ธฐ๊ณ, ์ด๋ฒคํธ ๊ธฐ๋ฐ, ์ปดํฌ๋ํธ ๊ธฐ๋ฐ, ์ ๋ต ๋ญ ์ด๋ฐ ๊ฑฐ ํ์ฉํด์ ๊ฐ๋ฐํ๋?
๋ํ์ ์ผ๋ก ์ฐ๋ ๊ฑฐ๋ ๊ณต๋ถ ๋ฐฉ๋ฒ ์ข ์๋ ค์ค ์ ์์๊น?
์ด๋ฒคํธ๋ฅผ ์ด์ฉํ๋ฉด MVPํจํด๊ฐ์๊ฑฐ ์ธ์์๊ธดํจ. RX๋ฅผ ์ฐ๋ฉด ์ข ๋ ํธํ๊ฒ ๋ง๋ค์๋ ์๊ณ .
์ ์ด์ ๋์์ธํจํด์ด๋๊ฒ ์ด๋ ๊ฒ ํ๋ฉด ์ข ๋ ์ฝ๋๋ฅผ ์ ์ง๋ณด์ํ๊ณ ํ์ฅ์ ์ํ ์์๋๋ผํ๋๊ฑธ ๋ชจ์๋์๊ฑฐ๋ผ. ์์ง์ด ๋ฌ๋ผ์ ๋ญ ํจํด์ ๋ชป์ฐ๊ณ ๊ทธ๋ ์ง ์์.
์น ํ๋ค ์์ ํจํด ์์ฒด๊ฐ ์ ์ง๋ณด์๋ฅผ ์ํด ๋ง๋ ๊ฑด ์๊ฒ ์ ์น์์ MVC ๋ฅผ ๋ํ์ ์ผ๋ก ์ฐ๋๋ฐ ์ ๋ํฐ๋ ๋ญ ์ฐ๋ ์ถ์ด์ ๋ด ์ง๋ฌธ ๋ฐฉ์์ด ๋๋นด๋๋ด
์ ๋ญ ๋ด๊ฐ ์ฐ๋๊ฒ MVP์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๋๋ฐ, UniRx๋ฅผ ์ด์ฉํด์ ๋ชจ๋ธ์ด ๋ณ๊ฒฝ๋ ๋ ๋ชจ๋ธ์ Observeํ๋ ์ค๋ธ์ ํธ๋ UI๊ฐ ๋ฐ๋๋ ์์ผ๋ก๋ ๊ฐ๋ ์. ์ต๊ทผ์๋ ์บ๋ฆญํฐ์ ์ฅ๋น์ํ๋ฅผ ๋ชจ๋ธ๋ก ๋ง๋ค์ด์ ๋ชจ๋ธ์ด ๋ฐ๋๋ ์บ๋ฆญํฐ ์ค๋ธ์ ํธ์ ์ฅ๋น๊ฐ ๋ฐ๋๋ ์์ ๊ตฌํ์ ํด๋ณธ๊ฑฐ๊ฐ๋ค.
์ต๊ทผ์ ์ฝ์ด๋ณธ์ฑ ์ผ๋ก๋
http://www.yes24.com/Product/Goods/114854688
์ด์ฑ ์ฝ์ด๋ดค์.
๋งํฌ ์ค ์ฑ ์ฝ์ด๋ณผ๊ฒ ์ถ์ฒ ๊ณ ๋ง์ ๋์์ด ๋ ์ง ๋ชจ๋ฅด๊ฒ ๋๋ฐ ๋ฐ๋์ ์ ๋ฆฌ๋ ๋งํฌ ์์ฝ ์ข์ผ๋๊น ๋ด๋ด
MVC๋ ๋ชจ๋ธ๋ทฐ์ ์ฐ๊ฒฐ์ ๋์จํ๊ฒ ํด์ ๋ก์ง์ฝ๋์ ๋ทฐ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ฉ์ดํ๊ฒ ํด์ค. ์น์ด๋ ๊ธฐ๋ณธ ์ฑ์์ ์ฐ๊ธฐ ์ข์ง. ๊ฒ์์ ํน์ฑ์ ๋ทฐ๊ฐ ๋ฐ๋๋ฉด ์ปจํธ๋กค์ด๋ ๋ชจ๋ธ ๋ฐ๋๊ฐ๋ฅ์ฑ์ด ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ๋งค์ฐ ๋๋ค. ๊ทธ๋์ ์ฌ์ค MVC๋ก ๋๋๋ฉด ์ธ๋ฐ์๋ ๊ธ๋ฃจ์ฝ๋๋ง ๋ง์์ง๊ณ ์ฝ๋ ํ์ ๋ ์ฝ์ง ์์. ํ๋๊ฑด ๋ง๋ฆฌ์ง ์๋๋ค๋ง... ํด๋ณด๋ฉด ์๊ฑฐ๋ค ์ ์์ข์์ง...
๊ฒ์ํด๋ณด๋๊น ์ ์ฐ๋ ๊ฒ ๋ซ๋ค ์ถ๊ธดํ๋ฐ ๊ฒ์์์๋ ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ฅผ ์ด๋ป๊ฒ ํ๋ ์ถ์ ๋ฌด์์ controller ์ ๊ฐ๋ค ๋ถ์ฌ์ ๋ง๋ค ์๋ ์์์ ๊ฐ์์์๋ ์ด๋ฐ ๋ฐฉ์์ ์ ์ฐ๋์ง๋ ์ ์๋ ค์ฃผ๊ณ ์ด ๊ธฐ๋ฅ์ ์ด๋ ๊ฒ ๋ง๋ค์ด์ ์ด๋ฌ๋๋ผ๊ณ
๊ฒ์๋ง๋ค ์ผ๋ฐ์ผ์ง๋ง, ์น์๋ฒ ํต์ ๊ธฐ๋ฐ ๊ฒ์์ ์๋ฒ์์ฒญ์ ํตํด ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ์บ์ฑํด๋๋ ์ปจํ ์ด๋(๋ณดํต ์ฑ๊ธํด)๊ฐ ์๊ณ , ๊ทธ๊ฑธํตํด UI๋ฅผ ์ ๋ฐ์ดํธ๋ฅผ ๋ง์ด ํจ. ๊ฒ์UI๋ค์ ์บ์ฑ๋ฐ์ดํฐ๋ฅผ ์กฐํํด์ ์ฌํ๋ ๋ ๋ฒจ ์ด๋ฐ๊ฑฐ ๊ฐฑ์ ํ๋ฉด๋๊ณ , ์บ์ฑ๋ฐ์ดํฐ๋ ๋ฆฌํ/๋ฆฌ์คํฐ๋๋ง ๊ฐฑ์ ๋๋ฉด ๋๋๊น ๋ณดํต ์ด๋ ๊ฒ ํจ. ๊ทผ๋ฐ ํค์ฐ๊ธฐ ๊ฒ์์ฒ๋ผ ๋งคํ๋ ์ ์ฌํ๋ ๋ฐ๋ฏธ์ง ๋ฏธ์น๋ฏ์ด ๊ณ์ฐ๋์ ํด๋ผ์์ ์ฌํ๊ฐฑ์ ์ด ๋ฐ์ํ๋ ๊ฒ์๊ฐ์ ๊ฒฝ์ฐ, ์ฌํ ๊ฐฑ์ ๋๋ฉด ์ผ์ ์๊ฐ๋ง๋ค ์๋ฒ์ ์๊ณ , ์ฌ์ ํ๋ฉด ์๋ฒ์ ์ ์ฅํด๋๋๊ฑฐ ๋ฐ์์์ ๊ณ์ ํด๋ผ์์ ๊ฐฑ์ ํ๋ ๋ฐฉ์์ ์. ์๋ฒ๋ ์์ผ๋ฉด ๊ทธ๋ฅ ๋ฐ์ดํฐ๋ ๋ฉ๋ชจ๋ฆฌ์ ์๋ค๊ฐ ์ ์ฅํ๋ฉด ๋์คํฌ์ ์ํธํํด์ ์ ์ฅํ๊ฒ ์ง. ์น์ ์ ๋ฐ์ดํธ ์์ (๋ฆฌํ/๋ฆฌ์คํฐ)๊ณผ ๋ฐ์ดํฐ(RDBMS,NoSQL)๊ฐ ์ ํํ๋์์ง๋ง, ๊ฒ์์ ์ฅ๋ฅด๋ ๋ฐฉ์์ ๋ฐ๋ผ ๋ค ํ๋ ค
๊ทธ๋์ ๋ญ ๋ง๋ค์ง๋ ์์ ํด๋๊ณ ์ผ๋จ ๊ตฌ์กฐ๋ถํฐ ํ๊ณ ๊ณต๋ถํ๋๊ฒ๋ณด๋จ, ๋ง๋ค๊ณ ์ํ๋๊ฑฐ ์ ํด๋๊ณ ๊ทธ ๊ตฌ์กฐ๋ฅผ ์๊ฐํด๋ณด๋๊ฒ ๋ ๋น ๋ฅผ๊ฑฐ๋ค. ๋ฅํผํ๊ธฐ ๋ง๋๋๋ฐ ๋ฐ์ดํฐ๊ตฌ์กฐ๊ฐ์๊ฑฐ ๊ณต๋ถ๊ฐ ํ์ํ๊ฒ ์? ์ ์ผ ์ค์ํ๊ฑด ๋ฅ ์ด๋ฏธ์ง๋ถํฐ ์ฐพ๋๊ฑฐ์.
์น์ ์ ํํ๋ ๋ฐฉ์์ด๋ ๋ง์ด ๋ค๋ฅด๊ตฌ๋ ๋ง์ด ๋ฐฐ์ ์ ์ํ๋ ์ฅ๋ฅด๋ ์ ํ์ผ๋ ๊ฐ์๋ถํฐ ๋ฐ๋ผํ๊ณ ์ฒ์ฒํ ์ฐพ์๋ณผ๊ฒ ใณใณ
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
๊ฒ์์์ ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ผ๊ณ ํด์ผํ๋ ๊ตฌ์กฐ ์ค๊ณ๋ผ๊ณ ํด์ผํ๋ ์ด๋ฐ ๊ฑด ์ด๋ป๊ฒ ํจ? ๋๋ ์น ํ๋ค ์์ ์น์ ๋๊ฐ ์๋๋ฐ ํด๋ผ - ์ปจํธ๋กค๋ฌ - ์ปค๋งจ๋ - DAO-DTO-DB ์ด๋ฐ ์์ผ๋ก ๋ค๋ฃจ์์
๊ฒ์์์ MVC ๊ฐ ์น์ MVC ๋ ๋ค๋ฅด๋ค๋ ๊ฑด ์ดํดํ์ ๊ทธ๋ ๊ฒ ๋ค๋ฃจ๋ ๊ฒ ์๋์ง ๋ฌผ์ด๋ณธ ๊ฑฐ์์ ๋งํฌ ์ฐธ๊ณ ๋ง์ด ๋์ ๋ฐ๋ก ์ฑ ์ ์ฌ๋ ๊ณต๋ถํด๋ณผ๊ฒ ใณใณ
Unirx ์จ๋ด MVRP ๋ก ๊ตฌํํด์ ์์ฐ๊ณ ์์ ๊ฐ๊ฟ์! ๋ชจ๋ ๊ฑฐ์ ์ฐ๋ํธ์์๋๊ณ UI ๋ ์ฐ๋ํ ๋๋ง ์ฐ๋๋ฐ ์ฝ๋๊น๋ํด์ง๊ณ ๊ด๋ฆฌํ๊ธฐ์ข์ ์ ๋ถ๋ค์ฐ๊ธฐ์ ๊ฒ์ ๊ตฌ์กฐ์ ํ๋ฌ