2005年02月13日

Visitor パターン

   このエントリーをはてなブックマークに追加 Clip to Evernote
Visitorパターンを勉強しましが。他のパターンに比べ、Visitorパターンは難しいですね。ダブルディスパッチは直感的にわかりずらいので、理解するまで、時間が掛かってしまいました。僕のような頭の悪い人間は、実際に動かして確かめるまで、なぜ、Treeをたどれるのかが複雑でわかりませんでした。
普通に再帰処理でたどるほうが僕には分かりやすいです。
でも、いろいろ考えて、なるほど、Visitorパターンが有効だということが少しづつわかってきました。
オブジェクト指向的に考えれば、ある機能というのは、そのデータと一緒にカプセル化するのが普通ですが、機能の追加が頻繁に発生することを考えると、データを保持しているクラスに機能を追加してしまうと、メンテナンスが大変になってしまいます。
Visitorパターンは、そういった時に力を発揮しそうです。
一方、機能よりもクラスの数が増えるほうが頻繁にあるとすると、メンテナンスはそれほど楽ではありませんね。

どちらにせよ、通常の再帰処理の他に、Treeをたどる方法を習得できたということは、とても大きな収穫でした。


 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/14222513