방문자 패턴
방문자 패턴이란?⌗
데이터의 구조와 처리를 분리하는 패턴
분리를 하면 구조를 수정하지 않고도 실질적으로 새로운 동작을 기존의 객체 구조에 추가할 수 있게 된다
구조⌗
Visitor
데이터 처리를 하는 객체를 추상화Element
데이터를 구조를 추상화
Visitor 객체를 받아들이는 데이터 구조의 인터페이스
장점⌗
데이터의 구조,즉 처리 대상과 처리 항목을 구조적으로 분리하여
데이터의 독립성을 높여준다
처리하는 입장에서는 동일한 인터페이스로 다양한 데이터를 처리할 수 있게 해준다
단점⌗
Element
, 데이터 구조가 추가됨에 따라
Visitor
, 처리할 객체도 이에 따른 처리과정을 추가해야 한다.
따라서 두 객체간의 결합도가 높아지게 된다.