[디자인 패턴] 구조, Decorator pattern(장식자 패턴) with Swift
객체에 동적으로 새로운 기능을 추가하고 싶은 경우 활용할 수 있는 패턴입니다.상속 없이 새로운 서비스를 추가하려는 것이 해당 패턴의 가장 큰 목표입니다.1️⃣ 동기기존 문자열 생성기가 만들어내는 문자열의 양끝에 반드시 대괄호를 추가할 필요가 있는 경우를 예시로 들어보겠습니다.해당 기능을 추가하기위해 문자열 생성기 타입인 Generator를 상속하는 BracketGenerator를 정의한는 것은 좋지 못합니다.양쪽 문자열에 큰 따옴표를 추가해야하는 새로운 기능이 생길 경우 모든 조합의 서브클래스를 생성해야하기 때문입니다.큰따옴표 + 대괄호, 대괄호 + 큰따옴표, 큰따옴표, 대괄호 ..이는 기능이 추가될 때마다 수많은 클래스를 생성함으로 답답한 확장성을 가지게 됩니다. 장식자 패턴의 장식자는 기능을 확장하기..
2025.04.15