์๋์ฐจ์์ ๋ง์ฝ ์์ง์ด ์ค๋๋์ ์์ง์ ๋ฐ๊พธ๊ณ ์ถ๋ค๋ฉด, ์๋์ ์ ์ฒด๊ฐ ์๋ ์์ง๋ง ๋ฝ์์ ๋ฐ๊ฟ์ฃผ๋ฉด ๋ฉ๋๋ค. ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์์๋ ํด๋์ค์ ๋ํ ๋ณ๊ฒฝ์ด ํ์ํ๋ฉด ๋ค๋ฅธ ํด๋์ค์ ์ํฅ์ ๋ผ์น์ง ์์ผ๋ฉด์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ํฉ์ ๋ ์์ํ๊ฒ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅ์ผ ๋์์ค์ ์๋๋ก ๋์ ๋ ๊ธฐ๋ฅ์ด ๋ฐ๋ก DI(Dependency Injection)์ IoC(Inversion of Control)์ ๋๋ค. ์๋ฐ๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ๋ฉด์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋ ์ง์ ํด๋์ค์ new ์ฐ์ฐ์๋ฅผ ์ด์ฉํ์ฌ ์์ฑํ์ต๋๋ค. ํ์ง๋ง DI๋ ๊ฐ๋ฐ์๊ฐ ์ง์ ์ฝ๋ฉ์ ํ์ฌ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์๋๋ผ, ์ปจํ ์ด๋๊ฐ ์ด๋ฅผ ์์ฑ์์ผ ์ฃผ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ ๊ฒ ๋๋ค๋ฉด ์ฝ๋์์ ์ง์ ์ ์ธ ์ฐ๊ด ๊ด๊ณ๊ฐ ๋ฐ์ํ์ง ์์ ๊ฐ ํด๋์ค๋ค์ ๋ณ๊ฒฝ์ด ์์ ๋ก์ ์ง๋๋ค...