簡介

Visitor Pattern(訪問者模式)是一種行為型設計模式,將作用於物件結構元素的操作封裝成訪問者物件。

問題

當需要對物件結構中的元素進行多種操作時。

解決方案

將操作封裝成訪問者類別,並由元素接受訪問者。

C# 範例

public interface IVisitor {
    void Visit(Element element);
}
public class Element {
    public void Accept(IVisitor visitor) { visitor.Visit(this); }
}

結論

Visitor Pattern 讓操作擴充更容易,符合開放封閉原則。