반응형
1. 방문자 패턴 정의 💡 방문자 패턴 (Visitor Pattern) 알고리즘을 객체 구조에서 분리시키는 디자인 패턴이다. 데이터 구조와 처리를 분리하는 것이다. 'visitor'는 방문자 라는 의미로 데이터 구조를 방문하고 다니는 주체인 '방문자'를 나타내는 클래스를 준비하고 그 클래스에 처리를 맡기는 것이다. 2. 예제 프로그램 (1) 예제 코드 Visitor 패턴을 사용해 파일과 디렉토리 구조를 표현 역할 이름 내용 Visitor Visitor 클래스 파일이나 디렉토리를 방문하는 방문자를 나타내는 추상 클래스 Element Element 인터페이스 Visitor 클래스의 인스턴스를 받아들이는 데이터 구조를 나타내는 인터페이스 ConcreteVisitor ListVisitor 클래스 Visitor ..
1. 컴포지트 패턴 정의 💡 컴포지트 패턴 (Composite Pattern) 객체들을 트리 구조로 구성하여 개별 객체와 복합 객체를 동일한 방식으로 다룰 수 있게 하는 구조적인 패턴 중 하나 이다. 이 패턴은 "전체-부분" 계층 구조를 표현할 때 유용하며, 클라이언트 코드가 단일 객체든 복합 객체든 동일한 인터페이스를 통해 사용할 수 있게 한다. 컴퓨터의 파일 시스템에는 '디렉토리'(폴더라 부르기도 함)가 있다. 디렉토리 안에는 또 다른 디렉토리나 파일이 들어간다. 디렉토리를 그릇, 파일을 내용물이라 생각하자. 그릇안에 더작은 그릇을 넣을 수 있듯이 디렉토리안에 디렉토리를 넣을 수 있다. 디렉토리는 이렇게 중첩 구조, 재귀적인 구조를 만들어 낸다. 컴포지트 패턴은 이러한 '중첩 구조', '재귀적인 구조..