【2013.3.6】真个的设计模式无需解释,而在心中,在领悟。——Interpreter
【2013.3.6】真正的设计模式无需解释,而在心中,在领悟。——Interpreter
// // // // // // // // //
///2013.3.6
// // // // // // // // //
终于走到了设计模式的最后一个。
平心而论,
之前的22个设计模式大多都是比较常见的,
几乎做任何项目都有使用的价值。
然而这个Interpreter模式则不然,
其适用范围较小。
正如其名,
此模式大多用来解释一些(自定义的)独特语法,
例如某些游戏开发引擎中读取XML文件,
或是WindowsPhone开发中的XAML文件,
都是使用此模式来进行的。
与其说是一种模式,
不如说是一种具有通用规范的行为更为准确。
其简单的一个例子是:
斯摩格密码。
这是我起的名字,
大家也不用去搜索。
但是大致就是如此,
例如一份密码电报,
需要通过特定的解读顺序以及某些关键字来解读,
才可以获取其内容,
而此模式即是大抵如此。
【核心】通过解释器来解释某种特定语法。
UML图:
这里有必要解释一下UML图:
Interpret方法即是解释器本身的行为。
TerminalExpression是终止符表达式,例如A◎B这个表达式中的A,B即是终止符。
NonterminalExpression是非终止符表达式,上式中的◎符号即为非终止符。
Context就是上下文啦,也就是需要被解释的东西。
未完待续