SOLID 원칙

Uhan33·2024년 3월 7일
0

TIL

목록 보기
42/72

객체 지향 설계를 할 때 중요한 SOLID 원칙에 대해 정리해보자

1. SRP 원칙 (단일 책임 원칙)

클래스는 하나의 책임만 가져야 한다는 매우 기본적인 원칙이다.
예를 들어 유저 서비스에 대한 클래스라면 유저와 관련된 액션만 해야 한다.

2. OCP 원칙 (개방 폐쇠 원칙)

클래스는 확장에는 열려있어야 하고 수정에 대해서는 닫혀 있어야 한다.
클래스의 기존 코드를 변경하지 않고도 기능을 확장할 수 있어야 한다.
인터페이스상속을 통해 이를 해결할 수 있다.

3. LSP 원칙 (리스코프 치환 원칙)

서브타입은 기반이 되는 슈퍼타입을 대체할 수 있어야 한다는 원칙
자식 클래스는 부모 클래스의 기능을 수정하지 않고도 부모 클래스와 호환되어야 한다.

4. ISP 원칙 (인터페이스 분리 원칙)

클래스는 자신이 사용하지 않는 인터페이스의 영향을 받지 않아야 한다.
즉, 해당 클래스에게 무의미한 메소드의 구현을 막자는 의미
인터페이스를 너무 크게 정의하기 보단 필요한 만큼만 정의하고 클래스에게 필요한 인터페이스들을 구현하도록 유도한다.

5. DIP 원칙

하위 수준 모듈보다 상위 수준 모듈에 의존해야 한다는 원칙
웹 서버 프레임워크 내에서 많이 나오는 원칙이다.

0개의 댓글