- 예를 들어, 네트워크 연결, 메모리 집약적인 연산, 디스크 I/O 등의 비용이 많이 드는 연산을 지연시키거나, 접근 권한을 확인하는 등의 작업을 Proxy가 수행할 수 있습니다.
- Flyweight 패턴은 객체의 내부 상태(공유되는 상태)와 외부 상태(고유한 상태)를 분리함으로써, 내부 상태가 같은 객체는 하나의 공유 객체를 사용하게 하여 메모리 사용량을 줄입니다.
따라서, Proxy 패턴과 Flyweight 패턴의 주요 차이점은 그들의 목적에 있습니다. Proxy 패턴은 객체에 대한 접근을 제어하고 추가적인 기능을 제공하는 데 사용되는 반면, Flyweight 패턴은 메모리 사용량을 최소화하는 데 사용됩니다.
제가 학습한 내용을 요약하여 정리한 것입니다. 내용에 오류가 있을 수 있으며, 어떠한 피드백도 감사히 받겠습니다.
감사합니다