预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共11页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

C#面向对象设计模式纵横谈 16.Interpreter解释器(行为型模式) 李建忠 jianzhong.lee@gmail.com 设计模式论坛: forum.softcompass.com 上海祝成科技高级培训讲师 www.softcompass.com 动机(Motivation) 在软件构建过程中,如果某一特定领域的问题比较 复杂,类似的模式不断重复出现,如果使用普通的 编程方式来实现将面临非常频繁的变化。 在这种情况下,将特定领域的问题表达为某种语法 规则下的句子,然后构建一个解释器来解释这样的 句子,从而达到解决问题的目的。 意图(Intent) 给定一个语言,定义它的文法的一种表示,并定义一 种解释器,这个解释器使用该表示来解释语言中的句 子。 ——《设计模式》GoF 例说Interpreter应用 CodesinVS.NET 结构(Structure) Interpreter模式的几个要点 •Interpreter模式的应用场合是Interpreter模式应用 中的难点,只有满足“业务规则频繁变化,且类似 的模式不断重复出现,并且容易抽象为语法规则 的问题”才适合使用Interpreter模式。 •使用Interpreter模式来表示文法规则,从而可以使 用面向对象技巧来方便地“扩展”文法。 •Interpreter模式比较适合简单的文法表示,对于复 杂的文法表示,Interperter模式会产生比较大的类 层次结构,需要求助于语法分析生成器这样的标 准工具。 .NET架构中的Interpreter CodesinVS.NET 推荐资源 •《设计模式:可复用面向对象软件的基础》GoF •《面向对象分析与设计》GradyBooch •《敏捷软件开发:原则、模式与实践》RobertC.Martin •《重构:改善既有代码的设计》MartinFowler •《RefactoringtoPatterns》JoshuaKerievsky 获取更多MSDN资源 •MSDN中文网站 http://www.microsoft.com/china/msdn •MSDN中文网络广播 http://www.msdnwebcast.com.cn •MSDNFlash http://www.microsoft.com/china/newsletter/case/ msdn.aspx •MSDN开发中心 http://www.microsoft.com/china/msdn/Developer Center/default.mspx Question&Answer 如需提出问题,请单击“提问”按钮并在 随后显示的浮动面板中输入问题内容。一 旦完成问题输入后,请单击“提问”按钮。