设为首页 加入收藏

TOP

[设计模式]解释器(Interpreter)之大胆向MM示爱吧(四)
2019-09-03 03:21:57 】 浏览:60
Tags:设计模式 解释 Interpreter 大胆 示爱
t; endl; 23 return 0; 24 }

那么我们输入之前第二串字符试试:

 *****
   **
  **         ******  **** ****   *****
  **        **    **  **   **   **   **
  **       **     **  **  **   ******** 
  ##    #  ##     ##  ## ##    ##
 ##    #   ##    ##    ###     ##    ##
#######     #####      ##       ######

MM表示很开心。对于这个示例的UML图:

特点总结

我们可以看到,Interpreter解释器模式有以下优点和缺点:

  1. 易于改变和扩展文法。因为该模式使用类来表示文法规则,我们可以使用继承来改变或扩展该文法。多加一种文法就新增一个类。
  2. 也易于实现文法。定义抽象语法树中各个节点的类的实现大体类似。通常它们也可用一个编译器或语法分析程序生成器自动生成。
  3. 复杂的文法难以维护。解释器模式为文法中的每一条规则至少定义了一个类,因此包含许多规则的文法可能难以管理和维护。

同时我们可以看到,它和其他设计模式:Composite(组合)模式有着许多相通的地方。具体可以参见之前的笔记。

写在最后

今天的笔记就到这里了,欢迎大家批评指正!如果觉得可以的话,好文推荐一下,我会非常感谢的!

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇以SqlHelper为例论面向对象中封装.. 下一篇工厂方法模式与抽象工厂模式

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目