go-pattern-examples/behavior/07_visitor
2020-05-04 16:12:01 +08:00
..
README.md finish visitor pattern 2020-05-04 16:12:01 +08:00
visitor_test.go finish visitor pattern 2020-05-04 16:12:01 +08:00
visitor.go finish visitor pattern 2020-05-04 16:12:01 +08:00

访问者模式

访问者模式,

访问者模式的目的是为了解耦对象和对象的使用和处理逻辑,一边提供资源,一边使用,也可以说是解耦生产出来的产品和产品消费者。

一个石油的例子油田提供石油不同的客户将石油用到不同的地方可能用于生产武器可能用于提纯材料生产服装也可能只是用于只是用于提供动力这些客户就是石油的不同visitor.

客户买石油的时候都要遵循油田的购买方式否则就不卖给你这个特定的购买方式就是指Visitor模式中常说的Accept方法。

打游戏是个不错的例子。

玩家角色需要跟NPC其他玩家以及游戏环境交换这些都是Visit的过程.