iOS์ฑ ๊ฐ๋ฐ๐: ์๋ฏธ ์๋ ๋ฐ์ดํฐ ๋ชจ๋ธ2
ํ์ฌ ์ฑ ์๋น์ค๋ฅผ ์ด์ํ๋ค ๋ณด๋ฉด ๊ณ ๊ฐ์ ํผ๋๋ฐฑ์ผ๋ก ๊ธฐํ๊ณผ ๋์์ธ์ด ๋ฐ๋๋ ๊ฒ์ ๋๋ฌด ๋น์ฐํฉ๋๋ค. ๊ทธ ๊ฒฐ๊ณผ, ์ฐ๋ฆฌ๊ฐ ๊ฐ๋ฐํด์ ์ฌ์ฉ ์ค์ธ API ๋ชจ๋์ ๋ณ๊ฒฝํด์ผ ํ๋ ์ํฉ์ด ์๊ฒผ๋ค๊ณ ์๊ฐํด๋ด ์๋ค. ํ์ด์ค๋ถ ์ฑ๊ณผ ๊ฐ์ Feed ๋ชจ๋ธ๋ง์ ํ๋๋ฐ ์ด๋ฒ ์๊ตฌ ์ฌํญ ๋ณ๊ฒฝ์ผ๋ก ์ธํด Feed ๋ชจ๋ธ์ ๋ง๋ฃ์ผ ์์ฑ์ ์ถ๊ฐํด์ผ ํฉ๋๋ค. ์์ ๋ณด๋ฏ์ด ๋ชจ๋ธ ํ์ค์ํ๋ก ์ธํด API ๋ชจ๋๊ณผ Persistence ๋ชจ๋์ ๋ชจ๋ธ์ด ๋ถ๋ฆฌ๊ฐ ๋ ์ํ์ ๋๋ค. ๋ง๋ฃ์ผ ์์ฑ์ API ๋ชจ๋ธ ๋ฟ ์๋๋ผ Persistence ๋ชจ๋์๋ ์ถ๊ฐํด์ผ ํฉ๋๋ค. ์ด๋ด ์ํฉ์ ํ์ค์ํ์ ์ญ์ค์ด ์๊น๋๋ค. ํตํฉ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ค๋ฉด ํ ๋ฒ์ ์์ ์ผ๋ก ๋๋ ์์ ์ด ๋ ๋ฒ ์ด์์ ์์ ์ ๊ฑฐ์ณ์ผ ํ๋ ์ถ๊ฐ ๋น์ฉ์ด ๋ฐ์ํ๊ฒ ๋ ๊ฒ์ ๋๋ค. ๐ค ์ด๋ฐ ์ํฉ์ด ๋ฐ์ํ ํ๋ฅ ์ด ๋๋ค๋ฉด ๋ชจ๋ธ ํ์ค์ํ๋ณด๋ค๋ ํตํฉ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์๊น์? ๐ก API ๋ชจ๋๊ณผ Persistence ๋ชจ๋ ๋ชจ๋์ ์ํฅ์ ๋ฏธ์น๋ ์๋ก์ด ์๊ตฌ ์ฌํญ์ด ์๋ ๊ฒฝ์ฐ ๋น์ฐํ ๋ ๋ค ๋ณ๊ฒฝํด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก DTO๋ ํ์ค์ํ๋ ์ฌ๋ฌ ๋ชจ๋์ ๋ชจ๋ธ ์ค ํ๋์ ๋ชจ๋ธ๋ง ๋ณ๊ฒฝํ๊ณ ๋ค๋ฅธ ๋ชจ๋์ ๋ชจ๋ธ์ ๋ณดํธํ๋ค๋ ์๋ฏธ๊ฐ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, API DTO์๋ ํค๋ ๋ฐ ์๋ต ๋ฉํ๋ฐ์ดํฐ์ ๊ฐ์ด ์บ์ฑํ ํ์๊ฐ ์๋ ์ถ๊ฐ ์ ๋ณด๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค. ๋ ๋ชจ๋์ด ํญ์ ํจ๊ป ๋ณ๊ฒฝ๋์ด์ผ ํ๋ค๊ณ ์๊ฐํ๋ค๋ฉด ๋ณ๋์ DTO๊ฐ ํ์ํ์ง ์์ต๋๋ค. ๋ ๋ชจ๋์ด ํจ๊ป ๋ณ๊ฒฝ๋ ๋์๋ ๋จ์ผ ๋ชจ๋๋ก ๊ฒฐํฉํด์ผ ํฉ๋๋ค. ํ์ง๋ง ๋ ๋ชจ๋์ด ํจ๊ป ๋ณ๊ฒฝ๋๋ ๊ฒ์ด ์๋๋๋ค. ๊ทธ๋ด์๋ก ์์ฌ๊ฒฐ์ ์ ํตํด ์ฌ๋ฐ๋ฅธ ์๋ฏธ ์๋ ๋ชจ๋ธ์ ๋ง๋ค๋ ค๊ณ ๋ ธ๋ ฅํฉ์๋ค!