반응형
SOLID 원칙이란?
5가지의 원칙으로 이루어져있고 시간이 지나도 변경이 용이하고, 유지보수와 확장이 쉬운 소프트웨어를 개발하는데 도움이 되는 원칙입니다.
SRP, OCP LSP, ISP, DIP의 앞글자를 따서 만들어짐.
SOLID 원칙 (객체지향 설계 5원칙)
1. SRP 단일책임원칙
- 하나의 클래스는 오로지 하나의 기능만을 책임진다.
- ex) Player가 입력처리, 오디오, 등 다양한 기능을 처리하고 있다면 이는 단일책임 원칙을 위반했다고 할 수 있다.
2. OCP 개방 폐쇄 원칙
- 기존의 코드를 변경하지 않으면서 기능을 추가할 수 있도록 설계한다.
- 확장에는 열려있고 수정에는 닫혀있어야한다.
3. LSP 리스코프 치환 원칙
- 서브 클래스가 상위 클래스를 완전히 대체 할 수 있어야한다.
4. ISP 인터페이스 분리 원칙
- 하나의 범용 인터페이스를 두는 것 보다 클라이언트가 실제 사용하는 인터페이스로 여러개 만들어야한다.
5.DIP 의존 역전 원칙
- 상위 수준의 모듈이 하위 수준의 모듈의 그 어떤 것도 가져오면 안되는 원칙
- 한 클래스가 다른 클래스의 작동 방식에 대해 너무 많이 아는 경우 결합도가 높아져 오류를 고치면 의존하는 다른 코드도 같이 눈덩이처럼 오류가 불어날 수 있다.
반응형