DAY 21
์ค๋ ์ฝ์ ๋ฒ์
10์ฅ ํด๋์ค ~p191
๐ ์ฑ
์์ ๊ธฐ์ตํ๊ณ ์ถ์ ๋ด์ฉ์ ์จ๋ณด์ธ์.
๐์ค๋ ์ฝ์ ์๊ฐ์? ๋ ์ค๋ฅด๋ ์๊ฐ์ ๊ฐ๋ณ๊ฒ ์ ์ด๋ณด์ธ์
- ์ฝ๋๋ฅผ ๊ตฌํํ ๋ ์ฃผ์ด์ง ์ํฉ์ด ์์ผ๋ฉด ๊ทธ ์ํฉ์ ์ต๋ํ ํด๊ฒฐํ๋ ค๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ตฌํ์ ํ์๋ค. ๊ทธ๋ฐ๋ฐ ์ค๋ ์ฑ
์ ๋ณด๊ณ ๋ง์ ๊ฒ์ ๋๊ผ๋ค.
๊ทธ ์ํฉ๋ง ํด๊ฒฐํ๋ฉด ๋ง์ฝ ๋น์ทํ ๋ค๋ฅธ ์ํฉ์ด ๋ฐ์ํ์์์ ๋ ์ฝ๋๋ฅผ ๋ค์ ์์ฑํด์ผ ํ ์๋ ์๋ค.
๋ฌธ์ ๋ฅผ ํฌ๊ฒ ๋ณด๊ณ ๊ฐ์ ์ข
๋ฅ์ ๋ฌธ์ ๋ ํด๊ฒฐ ํ ์ ์๋ ์ถ์์ ์ธ ํด๋์ค๋ฅผ ๊ตฌํํด์ผํ๋ค.
์ถ์ํ.. ํญ์ ๋ฐฐ์ ๋ ๋ง์ธ๋ฐ ์ค๋ ๋ค์ํ๋ฒ ๊ทธ ์ค์์ฑ์ ๋๊ผ๋ค.
๐ ๊ถ๊ธํ ๋ด์ฉ์ด ์๊ฑฐ๋, ์ ์ดํด๋์ง ์๋ ๋ด์ฉ์ด ์๋ค๋ฉด ์ ์ด๋ณด์ธ์.
- DIP : Dependency Inversion Principle์ ์ฝ์๋ก '์์กด์ฑ ์ญ์ ์์น'์ด๋ผ ํ๋ค.
์์ ๋ชจ๋์ ํ์๋ชจ๋์ ์์กดํด์ ์๋๊ณ , ํด๋์ค๊ฐ ์์ธํ ๊ตฌํ์ด ์๋๋ผ ์ถ์ํ์ ์์กดํด์ผ ํ๋ค๋ ์์น์ด๋ค.
DIP์ ํต์ฌ์ ์์กด ๊ด๊ณ๋ฅผ ๋งบ์ ๋ ๋ณํํ๊ธฐ ์ฌ์ด ๊ฒ(์์ธ๊ตฌํ)์ ์์กดํ๊ธฐ๋ณด๋ค๋, ๋ณํํ์ง ์๋ ๊ฒ(์ถ์ํ)์ ์์กดํ๋ผ๋ ์์น์ด๋ค!
(https://huisam.tistory.com/entry/DIP)
โ ์๊ฐ 3์ค ์์ฝ
- ๋น์ฐํ ์๋ ์๋ ๋ง์ด์ง๋ง ๊ณ์ํด์ ๋ณํ๋ ์์คํ
์์ ์ฝ๊ฒ ๋ณ๊ฒฝํ ์ ์๋ ์ฝ๋๋ ๋ต์ด ์๋ค.
- ๊ฐ์ฒด์งํฅ์ ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ์ฌ ๋ค๋ฅธ ์ฝ๋๊ฐ ๋ณ๊ฒฝ๋์ด๋ ์ ์ฒด์ ์ํ์ด ์๋๋ก ํด์ผํ๋ค.
- ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ๋ ๋ฐฉํฅ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ์. ์ถ์ํ! ์ธํฐํ์ด์ค!