๐ปProgramming/๋์์ธํจํด
-
[๋์์ธํจํด] ์ข์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ 5๊ฐ์ง ์์น SOLID(feat: Spring)๐ปProgramming/๋์์ธํจํด 2024. 3. 22. 18:45
SOLID ์์น์ ์์์ผ ํ๋ ์ด์ ์์คํ ์ ์๋ก์ด ๊ธฐ๋ฅ์ด ํ์ฅ๋๊ฑฐ๋ ๋ณ๊ฒฝ์ฌํญ์ด ์๋ ๊ฒฝ์ฐ ๊ธฐ์กด ๊ธฐ๋ฅ๋ค์ด ์ํฅ์ ์ ๊ฒ ๋ฐ๋ ๊ฒ์ด ์ข์ ์ค๊ณ์ด๊ธฐ ๋๋ฌธ. ์ด ์ข์ ์ค๊ณ๋ฅผ ํ๊ธฐ ์ํด ๋ํ๋ ๋ค์ฏ๊ฐ์ง ์์น์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด SOLID์์น์ด๋ค. ์ด ์์น์ ์ฌ์ฉํ๋ฉด ์ฝ๋๋ฅผ ํ์ฅํ๊ณ , ์ ์ง ๋ณด์ ๊ด๋ฆฌํ๊ธฐ๊ฐ ์ฌ์์ง๋ฉฐ, ๋ถํ์ํ ๋ณต์ก์ฑ์ ์ ๊ฑฐํด ๊ฐ๋ฐ์ ์์ฐ์ฑ์ ๋์ผ ์ ์๋ค. ๋ํ, ๋ฉด์ ๋จ๊ณจ ์ง๋ฌธ์ด๋ผ๊ณ ํ๋ ์ ๊ธฐ์ตํด๋๋ฉด ์ข๊ฒ ๋ค. 1. SRP(Single Responsibility Principle): ๋จ์ผ ์ฑ ์ ์์น ํ ํด๋์ค๋ ํ๋์ ์ฑ ์๋ง ๊ฐ์ ธ์ผํ๋ค. -> ํ ํด๋์ค๊ฐ ์ฌ๋ฌ๊ฐ์ ๊ธฐ๋ฅ์ ์ํํ๋ฉด ์๋๋ค๋ ๊ฒ. ๋ง์ฝ ํ ํด๋์ค๊ฐ ์ฌ๋ฌ๊ฐ์ ๊ธฐ๋ฅ์ ์ํํ๋ฉด, ๋ณ๊ฒฝ์ด ์ผ์ด๋ฌ์ ๋ ์์ ํด์ผํ ์ฝ๋๊ฐ ์ฆ๊ฐ. ex. A๋ฅผ ์..