관리 메뉴

caLAB

[개발] 쉽게 배워 바로 써먹는 디자인 패턴 04 - SOLID 본문

개발 공부/컴퓨터 과학

[개발] 쉽게 배워 바로 써먹는 디자인 패턴 04 - SOLID

도이(doi) 2022. 4. 19. 15:49
728x90

SOLID

1. Single Responsibility

2. Open - Closed

3. Liskov Substitution

4. Interface Segregation

5. Dependency Inversion

 

1. Single Responsibility

단일 책임 원칙 : 모든 함수나 클래스는 하나의 part에 대한 책임만 가짐. 

2. Open Closed 

개방 폐쇄 원칙 : 소프트웨어 개체는 확장에 대해 열려 있어야 하고, 수정에 대해 닫혀 있어야 한다.

open-closed 예시(hey 함수 : 폐쇄 / class 개별 동물 : 확장)

3. Liskov Substitution

리스코프 치환 원칙 : 하위 클래스는 수퍼 클래스로 대체 가능해야 합니다. 

Liskov Substitution 모식도
Liskov Substituion 예시

4. Interface Segregation

인터페이스 분리 원칙 : 클라이언트 입장에서 사용하는 기능만 제공하도록 인터페이스를 분리

인터페이스 사용 예시
Interface Segregation 예시

5. Dependency Inversion

의존성 역전 원칙 : 추상화된 인터페이스나 상위 클래스를 두어 변하기 쉬운 것의 변화에 영향받지 않게 하는 것

High Level이 Low Level에 대한 의존 (high level -> low level)
dependency inversion 예시

 

728x90
반응형
Comments