设计模式课程 设计模式精讲 20-1 解释器模式讲解


1    课程讲解

1.0  频次

1.1  类型:

1.2  定义:

1.3  适用场景:

1.4  优点:

1.5  缺点:

1.6  其他特性:

1.7  与其他设计模式关系:


1    课程讲解
1.0  频次:

使用频次很低,理解就可以,重点关注其他的设计模式

1.1  类型:

行为型

1.2  定义:

·定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。

扩展:

为了解释一种语言,而为语言创建的解释器

1.3  适用场景:

某个特定类型问题发生频率足够高

扩展:比如日常,用脚本语言或者编程语言。在处理日志的时候。我们有很多服务,每个服务呢,都会产生大量的日志。

我们需要对日志进行解析,从而做一些报表。服务的日志格式又不一样,但是数据里面的要素呢是相同的,所以在这种情况下。我们就可以通过该设计模式来解决该问题。可以解释不同的日志格式。

1.4  优点:

◆语法由很多类表示,容易改变及扩展此“语言”

1.5  缺点:

◆当语法规则数目太多时,增加了系统复杂度

扩展:每一个规则都要写一个类,规则太多,则类太多,系统的复杂度自然提高。

1.6  其他特性:

解释器一般使用开源工具解析包,例如Expression4J,JEP和MESP,

1.7  与其他设计模式关系:

◆解释器模式和适配器模式

后者不需要预先知道要适配的规则,解释器需要预先把规则写好,根据规则执行解释。

猜你喜欢

转载自www.cnblogs.com/1446358788-qq/p/12310586.html
今日推荐