SOLID 원칙은 객체지향 설계에서 유지보수성과 확장성을 높이기 위한 다섯 가지 핵심 원칙입니다.
단일 책임 원칙
SOLID에서 가장 중요한 첫 번째 원칙, 클래스 또는 함수가 오직 한 가지만 책임집니다.
다르게 말하자면 하나의 큰 클래스를 만들기보다는 여러 개의 작은 클래스를 만드는 편이 좋다는 것입니다 .
개방-폐쇄 원칙
클래스가 확장에는 개방적이되 수정에는 폐쇄적이어야 합니다.
원본 코드를 수정하지 않고도 새로운 동작을 생성할 수 있도록 클래스를 구조화하세요.
어떻게? 인터페이스와 추상화를 이용해서
리스코프 치환 원칙
파생된 클래스가 기본 클래스로 대체될 수 있어야 합니다.
파생 클래스에만 있는 기능을 인터페이스 또는 별도 클래스로 옮겨 합성하세요.
인터페이스 분리 원칙
어떠한 클라이언트도 자신이 사용하지 않는 메서드에 강제로 종속될 수 없습니다
단일 책임 원칙과 같이 인터페이스의 길이를 짧게 유지하고 컴팩트한 인터페이스를 유지하세요.
종속성 역전 원칙
상위 수준의 모듈이 하위 수준의 모듈에서 어떤 것도 직접 가져오면 안 됩니다.
상위에서 하위클래스를 의존하지말고 추상화에 의존해야 합니다.
여기서 상하위클래스란 상속관계가 아니라 다른 클래스를 생성하거나 호출하면 그 클래스는 호출한 클래스의 하위클래스가 됩니다.
'CS' 카테고리의 다른 글
| [CS] 컴퓨터 구조와 CPU (0) | 2023.01.17 |
|---|---|
| [어셈블리] 스택 메모리 (0) | 2022.06.18 |
| [어셈블리] 배열 (0) | 2022.06.18 |
| [어셈블리] 반복문 (0) | 2022.06.18 |
| [어셈블리] 분기문 (0) | 2022.06.18 |