2025-08-09 00:47
Tags: 소프트웨어 공학
SOLID 원칙
-
소프트웨어와 코드의 부패를 막기 위한 5가지 원칙
-
모든 SOLID 원칙은 소프트웨어가 썩어버리지 않게 하는것이 목표
-
하나를 고치면 다른게 망가져 결국 아무것도 고칠 수 없게되어 썩어버리는 문제
-
S: 단일 책임 원칙 Single Responsibility Principle SRP
-
O: 개방 폐쇄 원칙 Open-Closed Principle OCP
-
L: 리스코프 치환 원칙 Liskov Subsititution Priciple LSP
-
I: 인터페이스 분리 원칙 Interface Segregation Principle ISP
-
D: 의존성 역전 원칙 Dependency Inversion Principle DIP
-
OCP를 지키기 위해서는 DIP와 LSP가 기반이 되어야 합니다. 변화에 닫혀 있으려면 구체적인 구현이 아닌 추상화에 의존해야 하고(DIP), 확장을 위해 만들어진 하위 타입이 상위 타입을 문제없이 대체할 수 있어야 하기 때문입니다(LSP).
-
ISP와 SRP는 클래스와 인터페이스의 크기를 적절하게 유지하여 시스템의 복잡도를 낮추고, 결과적으로 다른 원칙들을 적용하기 쉽게 만드는 토대를 제공합니다.