[디자인패턴] 2 전략패턴 (Strategy Pattern)

SOLID
김호정's avatar
Aug 13, 2024
[디자인패턴] 2 전략패턴 (Strategy Pattern)
 
전략패턴의 핵심은 추상화!
전략패턴은 추상적인 것에 의존하는 것!
 

2-1. 전략 패턴

Solid

 
여기에서 중요한 3가지는 → s.o.d
 

D : DIP (의존 역전 원칙)

구체적인 것이 아닌 추상적인 것에 의존해라
 
DIP가 무엇인가?
구체적인 것이 아닌 추상적인 것에 의존하는 것입니다.
 
여기서 그치지 말고
 
DIP를 왜 쓰는가?
라는 질문에도 대답할 수 있도록 준비하라.
 
notion image
 
public class Mem02 {
void 달리다(Car car){
→ 여기서 추상적인 것 Car 에 의존하고 있다.
}
}
 

O : OCP (개방 폐쇄 원칙)

기존 코드 수정안하고 수정/추가 가능
 

S : SRP (단일 책임 원칙)

단일 책임의 원칙.
1개의 매서드는 1개의 기능만.
2개 이상의 기능이 들어가면 디버깅이 힘들어진다.
어디가 문제인지 파악하기 어려워 진다는 것!
근데 SRP를 지켜서 코드를 짜기란 쉽지 않아 1개의 매서드에
여러 기능이 들어가는 경우도 있다.
최대한 최소한의 책임만 가지도록 만든다.
 
 
// 누가 물어보면 대답할 수 있을정도로 정리하라
 
Share article

keepgoing