SOLID는 객체지향 설계 5대 원칙이라고 부르는데 SRP(단일책임원칙), OCP(개방-폐쇄 원칙), LSP(리스코프 치환 원칙), ISP(인터페이스 분리 원칙), DIP(의존성 역전 원칙)의 앞글자를 가져와서 SOLID 라고 부른다.
1. 단일책임원칙(Single Responsiblity Principle)
모든 클래스는 각각 하나의 책임만 가져야 한다. 그 책임은 완전히 캡슐화를 시켜주어야한다.
2.개방-폐쇄 원칙(Open Closed Principle)
확장에는 열려있고 수정에는 닫혀있는 것을 뜻하며 이 말은 기존의 코드를 변경하지 않으면서 기능을 추가할 수 있도록 설계 해야한다는 것을 말한다.
3. 리스코프치 치환 원칙(Liskov Substitution Principle)
자식 클래스는 언제나 자신의 부모 클래스를 대체할 수 있다는 원칙으로 자식 클래스를 부모클래스에 넣어도 계획대로 잘 작동해야한다.
4. 인터페이스 분리 원칙(Interface Segregatin Principle)
한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 말아야 한다. 하나의 일반적인 인터페이스보다 여러개의 구체적인 인터페이스가 좋다.
5. 의존 역전 원칙(Dependency Inversion Principle)
의존 관계를 맺을 때 변화하기 쉬운 것 또는 자주 변화하는 것보다는 변화하기 어려운것, 거의 변화가 없는 것에 의존하라는 것이다. 구체적인 클래스보다 추상클래스와 관계를 맺는게 좋다.
각 원칙들을 따로 구분하여 정리해 보는게 좋을 것 같다.
'Today I Learned' 카테고리의 다른 글
개방폐쇄의 원칙_Open Close Principle(SOLID 5원칙중 O) - TIL (0) | 2023.07.28 |
---|---|
단일책임원칙_Single Responsibilty Principle(SOLID 5원칙 중 한가지) - TIL (0) | 2023.07.27 |
23년 7월 25일 TIL (0) | 2023.07.25 |
23년 7월 24일 TIL (0) | 2023.07.24 |
23년 7월 21일 TIL (0) | 2023.07.21 |