GoF设计模式之十五 Interpreter- -

来源:百度文库 编辑:神马文学网 时间:2024/04/28 04:06:19
C3) Interpreter(解析器模式)
定义:为一种特定语言语法定义一个描述,从而用这个描述和解析器一起来解析这种语言的语句。
从名称上就能看出这个模式是怎么样的了,要设计一种语言并且将其解析并不是件容易的事情,因此,这个模式使用率相当的低。对于大部分的设计者和程序员来说,主要还是应用层面上的。我也没有吃透这个模式,也就稍微谈一下。
作为解析模式比较典型的例子就是JSP中的taglib标签库,标签库的实现就是一个解析的过程。tag可以看作是一种新的语言,不同的tag标签有自己的一套语法解析定义(也就是DTD文件),按照这个定义,在通过servlet时候被转换为HTML语言。如果理解了这个过程,我们也可以制作自己的标签库。话说回来,HTML语言也是一种标签库,是最基本的,可以被浏览器解析的语言。
参考:
1、http://www.jdon.com/designpatterns/interpreter.htm(中文、java实例)
2、http://www.dofactory.com/Patterns/PatternInterpreter.aspx(英文、C#实例、UML)
3、http://www.caterpillar.onlyfun.net/PmWiki/pmwiki.php/DesignPattern/InterpreterPattern(中文、java实例、UML)推荐