Visitor 패턴 데이터구조를 돌아다니면서 처리한다. 데이터의 구조와 처리를 분리한다. 데이터 구조를 돌아다니는 '방문자'를 정의해서, 이 방문자가 '처리'를 담당하도록 한다. 데이터 구조는, 문을 두드리는 '방문자'를 받아들이기만 하면 된다. FileTreatmentException 예외처리 File 엔트리에 무언가를 추가(add)하고자 할 때 발생되는 예외 더블 디스패치 (Double Dispatch) Visitor와 Acceptor는 서로 대응관계에 있으며, 서로가 서로를 호출한다. ConcreteVisitor 역할의 추가는 간단하다. 구체적인 처리는 ConcreteVisitor 역할에 맡길 수 있고, 그 처리를 위한 ConcreteElement 역할을 수정할 필요는 전혀 없기 때문이다. Conc..