首先,本章说明解释器的设计模式和访问者的设计模式相关知识
方法1.概念
这两种设计模式在我们的日常开发中几乎不用,所以这次我带一笔!
2.解释器设计模式
解释器模式(Interpreter Pattern )提供了一种评估语言语法或表达式的方法。 这是动作模式。 此模式实现解释特定上下文的表达式接口。 该模式用于SQL分析、符号处理引擎等。
使用场景:
1、可以将需要解释执行的语言的句子表示为抽象语法树。 2、反复出现的几个问题可以用简单的话来表达。 3、需要说明简单语法的场景。注意事项:因为可以利用的场景很少,所以在JAVA上遇到的话可以用expression4J代替。
3.访问者设计模式
在访问者模式下,使用了访问者类来更改元素类的执行算法。 这样,要素的执行算法可以根据访问者的变化而变化。 这种类型的设计模式是行为模式。 根据模式,元素对象会接受访问者对象,并允许访问者对象处理对元素对象的操作。
使用场景:
1、对象结构中与对象相对应的类很少改变,但往往需要在此对象结构中定义新的操作。 2、需要对一个对象结构中的对象进行许多不同且不相关的操作,需要避免这些操作“污染”这些对象的类,也不希望在添加新操作时修改这些类。注意事项:访问者可以统一其功能并创建报告、UI、拦截器、过滤器。