전략패턴1 전략 패턴 전략 패턴객체의 행위를 클래스를 통해 캡슐화하여 동적으로 행위를 변경할 수 있게 해주는 패턴 장점:코드의 유연성 : 서로 다른 알고리즘을 쉽게 교체할 수 있으므로, 코드의 유연성 높아짐재사용성 : 특정 행동(전략)을 별도의 클래스로 분리함으로써 여러 객체에서 재사용런타임에서 전략 선택 : 인터페이스를 통해 다양한 알고리즘(전략)을 구현 가능, 이를 런타임에 선택하거나 교체단점:클래스 수 증가 : 클래스로 분리하여 클래스의 수 증가함. 이로인해 코드 복잡해짐클라이언트 코드의 복잡성 : 객체 생성 및 관리 로직 추가됨의존성 증가 : 잘못 설계 시 유지보수 어려움예시 코드# 전략class MusicStrategy: def recommend_song(self): pass# 발라드class Ba.. 2024. 9. 5. 이전 1 다음