๐Ÿ‘จ‍๐Ÿ’ป kimtongting
OOP์˜ 5๋Œ€ ์›์น™ (SOLID)

SOLID ์›์น™ ํ•ญ์ƒ ๊ธฐ์–ตํ•˜์ž S: ๋‹จ์ผ ์ฑ…์ž„ ์›์น™(SRP, Single Responsibility Principle) ๊ฐ์ฒด๋Š” ๋‹จ ํ•˜๋‚˜์˜ ์ฑ…์ž„๋งŒ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค. O: ๊ฐœ๋ฐฉ-ํ์‡„ ์›์น™(OCP, Open Closed Principle) ๊ธฐ์กด์˜ ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค. L: ๋ฆฌ์Šค์ฝ”ํ”„ ์น˜ํ™˜ ์›์น™(LSP, Liskov Substitution Principle) ์ผ๋ฐ˜ํ™” ๊ด€๊ณ„์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋ฉฐ, ์ž์‹ ํด๋ž˜์Šค๋Š” ์ตœ์†Œํ•œ ์ž์‹ ์˜ ๋ถ€๋ชจ ํด๋ž˜์Šค์—์„œ ๊ฐ€๋Šฅํ•œ ํ–‰์œ„๋Š” ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. I: ์˜์กด ์—ญ์ „ ์›์น™(DIP, Dependency Inversion Principle) ์˜์กด ๊ด€๊ณ„๋ฅผ ๋งบ์„ ๋•Œ ๋ณ€ํ™”ํ•˜๊ธฐ ์‰ฌ์šด ๊ฒƒ ๋˜๋Š” ์ž์ฃผ ๋ณ€ํ™”ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค๋Š” ๋ณ€ํ™”ํ•˜๊ธฐ ์–ด๋ ค์šด ๊ฒƒ, ๊ฑฐ์˜ ๋ณ€ํ™”๊ฐ€ ์—†๋Š” ๊ฒƒ์—..