๐ iOS/Design Pattern (2) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Design Pattern] ๊ตฌ์กฐํจํด - Adapter Pattern ๊ตฌ์กฐ ํจํด ์ด๋ํฐ ํจํด์ ๋์์ธํจํด ์ค ๊ตฌ์กฐ ํจํด์ ํด๋นํ๊ธฐ ๋๋ฌธ์, ๊ตฌ์กฐ ํจํด์ด ๋ฌด์์ธ์ง ๋ถํฐ ์์๋ณด๊ฒ ์ต๋๋ค! ๊ตฌ์กฐ ํจํด์ ํด๋์ค์ ๊ฐ์ฒด๊ฐ ์ด๋ป๊ฒ ๊ตฌ์ฑ๋๋์ง์ ๊ด๋ จ์ด ์์ต๋๋ค. ๊ตฌ์กฐ ํจํด์ ์๋ก์ด ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด ์ธํฐํ์ด์ค๋ ๊ตฌํ์ผ๋ก ์ฒ๋ฆฌํ๊ธฐ ๋ณด๋ค๋ ๊ฐ์ฒด๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ์ ์ํฉ๋๋ค. ์ด๋ ๊ฒ ์ถ๊ฐ๋ ๊ธฐ๋ฅ๋ค์ ์ ์ฐ์ฑ์ ๋ฐํ์์์ ๊ตฌ์ฑ์ ๋ณ๊ฒฝํ ์ ์๋ ๋ฅ๋ ฅ์์ ๋น๋กฏ๋๋ฉฐ, ์ ์ ํด๋์ค๋ก๋ ํ ์ ์๋ ์ผ์ ๋๋ค. ๊ฐ๋จํ๊ฒ ๋งํด์ ๊ตฌ์กฐ ํจํด์ ์ฌ๋ฌ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ํด๋์ค๋ฅผ ํ๋์ฒ๋ผ ์ฌ์ฉํ ๋ ์ฌ์ฉํ๊ฑฐ๋ ์ฌ๋ฌ ์ธํฐํ์ด์ค๋ฅผ ํตํฉํ์ฌ ํ๋์ ์ธํฐํ์ด์ค๋ก ๋ง๋๋ ํจํด์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค. Adapter Pattern (์ด๋ํฐ ํจํด) ์ด๋ํฐ ํจํด์ ํธํ๋์ง ์๋ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ง ๋ ๊ฐ์ ๊ฐ์ฒด๊ฐ ํจ๊ป ๋์ํ ์ ์.. [Design Pattern] ์ฑ๊ธํค ํจํด(Singleton Pattern) ์ต๊ทผ ํ๋ก์ ํธ์์ ์ฑ๊ธํค ํจํด์ ์ฌ์ฉํด๋ณด๊ฒ ๋์๋๋ฐ์! ์ฑ๊ธํค ํจํด์ ์ ๋๋ก ์๊ณ ์ฐ๊ณ ์ ์ฑ๊ธํค ํจํด์ ๋ํด ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํฉ๋๋ค. Singleton์ ์ ์, ์ฌ์ฉ์ด์ , ์ฌ์ฉ๋ฐฉ๋ฒ ์์ผ๋ก ์ ๋ฆฌํด๋๊ฐ๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค! ์ฑ๊ธํค ํจํด(Singleton Pattern)์ด๋? ์ํํธ์จ์ด ๋์์ธ ํจํด์์ ์ฑ๊ธํด ํจํด(Singleton pattern)์ ๋ฐ๋ฅด๋ ํด๋์ค๋, ์์ฑ์๊ฐ ์ฌ๋ฌ ์ฐจ๋ก ํธ์ถ๋๋๋ผ๋ ์ค์ ๋ก ์์ฑ๋๋ ๊ฐ์ฒด๋ ํ๋์ด๊ณ ์ต์ด ์์ฑ ์ดํ์ ํธ์ถ๋ ์์ฑ์๋ ์ต์ด์ ์์ฑ์๊ฐ ์์ฑํ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. ์ด์ ๊ฐ์ ๋์์ธ ์ ํ์ ์ฑ๊ธํด ํจํด์ด๋ผ๊ณ ํ๋ค. [์ถ์ฒ] ์ํค๋ฐฑ๊ณผ ์ฑ๊ธํค์ ๋์์ธ ํจํด ์ค ์์ฑ ํจํด์ ํด๋นํ๋ ๋์์ธ ์ ํ์ผ๋ก, ํด๋์ค๊ฐ ์ฌ๋ฌ ์ฐจ๋ก ํธ์ถ๋๋๋ผ๋ ๋ฑ ํ ๊ฐ์ฒด๋ง ์์ฑ๋๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด๋ฅผ ํ๋๋ง ์์ฑํ.. ์ด์ 1 ๋ค์