컴퓨터 지식

[CS] SOLID 설계원칙

bornsoon 2025. 3. 13. 00:56
객체지향 설계원칙
SOLID


단일 책임 원칙
SRP

개방-폐쇄 원칙
OCP

리스코프 치환 원칙
LSP

인터페이스 분리 원칙
ISP

의존성 역전 원칙
DIP




S : 단일 책임 원칙
한 클래스는 하나의 책임(변경 이유)만 가져야 한다.

O : 개방-폐쇄 원칙
엔티티(클래스, 모듈, 함수 등)는 확장에는 열려 있어야 하고, 변경에는 닫혀 있어야 한다.

L : 리스코프 치환 원칙
서브타입은 언제나 그것의 베이스 타입으로 교체될 수 있다.
슈퍼 클래스의 인스턴스 대신 서브 클래스의 인스턴스를 사용할 수 있어야 함.
이를 통해 다형성을 활용한 설계가 가능해짐.

I : 인터페이스 분리 원칙
클라이언트는 자신이 사용하지 않는 메서드에 의존하면 안됨.
불필요한 의존성을 줄이고 유연성 확장.

D : 의존성 역전 원칙(DIP)
고수준 모듈은 저수준 모듈에 의존하면 안됨.
추상화(인터페이스나 추상 클래스)에 의존해야 함.
모듈간의 결합도를 낮추고 유연성과 확장성을 높임.

728x90

'컴퓨터 지식' 카테고리의 다른 글

[AWS] RDS 외부접속 오류 / AWS의 IGW  (0) 2025.03.30
[CS] JSON(JavaScript Object Notation)  (0) 2025.03.13
[도커] 도커 컴포즈  (0) 2024.12.28
[CS] CI / CD  (0) 2024.11.08
[CS] AOP  (2) 2024.11.05