출처 : 디자인 패턴에 뛰어들기 - 알렉산더 슈베츠 도서비지터 패턴(Visitor Patten)알고리즘들을 그들이 작동하는 객체들로부터 분리할 수 있도록 하는 행동 디자인 패턴이다.문제당신의 팀이 하나의 거대한 그래프로 구성된 지리 정보를 사용해 작동하는 앱을 개발하고 있다고 가정해본다.그래프의 각 노드는 도시와 같은 복잡한 객체를 나타낼 수 있지만 산업들, 관광 지역들 등의 더 세부적인 항목들도 나타낼 수 있다.만약에 노드들이 나타내는 실제 객체들 사이에 도로가 있으면 노드들은 서로 연결된다.각 노드 유형은 자체 클래스지만 각 노드는 객체이다.그래프를 XML 형식으로 내보내기 예시이다.어느 날 당신은 그래프를 XML 형식으로 내보내는 작업을 구현하는 일을 맡았다.처음에는 일이 매우 간단해 보였다.각 노..