解释器模式定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。
比如:当xml 结构发生变化的时候,能够方便的获取相应元素或者属性值。
解释器本质:分离实现,解释执行。
Interpreter是一种特殊的设计模式,它建立一个解释器,对于特定的计算机程序设计语言,用来解释预先定义的文法。简单地说,Interpreter模式是一种简单的语法解释器构架。
Interpreter模式有很多种实现方法,下面我们给出Interpreter模式的一种类图来说明Interpreter模式:
在上图中,我们假设需要在Client中解释某文法,Client调用Context来存储文法规则,并调用解释器AbstractionExpression类树来对该文法加以解释。注意,上图只是Interpreter模式的一种实现方式的类图。
Context
解释器上下文环境类。用来存储解释器的上下文环境,比如需要解释的文法等。
AbstractExpression
解释器抽象类。
ConcreteExpression
解释器具体实现类。
Interpreter模式的实现范例
为了帮助大家理解Interpreter模式的基本概念,我们在这里只举一个最简单的例子。
让一个表达式a经过PlusExpression解释器处理后使该表达式+1,经过MinusExpression解释器处理后使该表达式-1。
分享到:
相关推荐
C#面向对象设计模式 (行为型模式) Interpreter 解释器模式 视频讲座下载
c++设计模式-行为型模式-解释器模式;qt工程;c++简单源码; 解释器(Interpreter)模式的定义:给分析对象定义一个语言,并定义该语言的文法表示,再设计一个解析器来解释语言中的句子。也就是说,用编译语言的方式...
解释器模式(Interpreter) 用意:定义一种语言,定义它的方法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。
在这里与各位分享本人从网络上下载的C#面向对象设计模式纵横谈系列视频,共有25节,除了第一节需要各位贡献一点资源分以作为对本人上传资源的回馈,后面的其他资源均不... 这是第16节:行为型模式Interpreter解释器模式
C#面向对象设计模式纵横谈(16):(行为型模式) Interpreter 解释器模式 (Level 300)
给定一个语言, 定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。
<!-- TOC --> - 23种设计模式 - 工厂方法模式(Factory Method) - 抽象工厂模式(Abstract Factory) ... - 解释器模式(Interpreter) - 迭代器模式(Iterator) - 备忘录模式(Memento) - 状态模式(S
5.3 INTERPRETER(解释器)—类行为型模式 162 5.4 ITERATOR(迭代器)—对象行为型模式 171 5.5 MEDIATOR(中介者)—对象行为型模式 181 5.6 MEMENTO(备忘录)—对象行为型模式 188 5.7 OBSERVER(观察者)—对象...
章节介绍:1、爪哇语言结构性模式之变压器模式介绍 2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立...10、设计模式之State 11、设计模式之Facade(外观) 12、设计模式之Interpreter(解释器) 13、设计模式之Visitor
主要介绍了iOS App设计模式开发中对interpreter解释器模式的运用,示例为传统的Objective-C写成,需要的朋友可以参考下
创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) 结构模式: 设计模式之Facade(外观) 设计模式之Proxy(代理) ...设计模式之Interpreter(解释器) 设计模式之Visitor
php设计模式 Interpreter(解释器模式),需要的朋友可以参考下。
23种Python设计模式示例...Interpreter解释器模式,Iterator迭代器模式,Mediator中介者模式、Singleton光身汉模式,Observer观察者模式等,一共23种,这里不一一列举了,每一种模式代码,都包括了中文注解,利于学习。
设计模式参考文档 创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) 结构模式: 设计模式之Facade(外观) ...设计模式之Interpreter(解释器) 设计模式之Visitor
行为型模式:模版方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式) 2) 学习目标:通过学习,学员...
5.3 INTERPRETER(解释器)——类行为型模式 5.4 ITERATOR(迭代器)——对象行为型模式 5.5 MEDIATOR(中介者)——对象行为型模式 5.6 MEMENTO(备忘录)——对象行为型模式 5.7 OBSERVER(观察者)——对象行为型...
主要介绍了Java设计模式之解释器模式(Interpreter模式)介绍,Interpreter定义:定义语言的文法,并且建立一个解释器来解释该语言中的句子,需要的朋友可以参考下
本文实例讲述了PHP设计模式之解释器(Interpreter)模式。分享给大家供大家参考,具体如下: 解释器模式,它是什么呢? 意思就是,给定一个语言, 定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来...
5.3 interpreter(解释器)—类行为型 模式 162 5.4 iterator(迭代器)—对象行为型 模式 171 5.5 mediator(中介者)—对象行为型 模式 181 5.6 memento(备忘录)—对象行为型 模式 188 5.7 observer...