第十二章节 - 访问者模式
访问者模式 - 章节
概念
. Separate Algorithm from Object
. Adding new features
. Maintain Open/Closed principle
. Visitor changes
. Examples:
. java.lang.model.element.Element
. java.lang.model.element.ElementVisitor
设计注意事项
Interface based
Visitor and Element
Elements have visit method
Visitor knows every Element
Visitor, ConcreteVisitor, Element, ConcreteElement
UML图
例子:Order
练习:访问者模式
Code Without
Visitor, Element, ConcreteVisitor, ConcreteElement
陷阱
▪适应性计划
▪间接有点混乱
▪适配器模式
对比
访问者模式
▪ Interfaced based
▪ Externalized changes 外部化的变化
▪ Multiple visitors
迭代器模式
▪ Interfaced based / Anonymous
▪ Encapsulates 封装
▪ Singular 奇异
访问者模式总结
•希望改变
•小复杂
•具体化变化
下一个是什么?
• Design Patterns in Java:Creational
• Design Patterns in Java:Structural
• maven-fundamentals - Next
• spring-fundamentals
• springmvc-intro
• spring-mvc4-introduction
• spring-ipa-hibernate
• spring-security-fundamentals