객체지향 설계 5원칙(SOLID 원칙)
- 객체 지향 프로그래밍에서 지켜야 할 다섯 가지 원칙을 나타내는 약어로 소프트웨어 설계와 유지보수의 용이성, 확장성, 재사용성 등을 증가시키기 위해 개발자들이 따라야 할 규칙을 제시.
종류
- SRP(Single Responsibility Principle) : 단일 책임 원칙으로 하나의 클래스는 하나의 책임만 가져야 함.
- OCP(Open Closed Principle) : 개방-폐쇄 원칙으로 확장에는 열려 있고, 변경에는 닫혀 있어야 함.
- LSP(Liskov Substitution Principle) : 리스코프 치환 원칙으로 자식 클래스는 언제나 부모 클래스를 대체할 수 있어야 함.
- ISP(Interface Segregation Principle) : 인터페이스 분리 원칙으로 클라이언트는 자신이 사용하지 않는 메서드에 의존 관계를 맺으면 안됨.
- DIP(Dependency Inversion Principle) : 의존 역전 원칙으로 고차원 모듈은 저차원 모듈에 의존하면 안되며, 추상화는 구체적인 사항에 의존하면 안됨.
정리
SOLID 원칙을 준수하면, 소프트웨어 시스템은 변경에 유연하고, 유지보수와 확장이 쉽게 이루어질 수 있으며 코드의 가독성과 재사용성도 높아지기 때문에, 객체 지향 프로그래밍에서는 SOLID 원칙을 중요하게 다룸.