Day45. 解译器模式

本文同步更新於blog

Interpreter Pattern

给定一个语言,定义它的语法表示与文法。

利用不同的表达式来翻译语言中的句子。


解译器模式会将类别分为两类:
分别是语境类别 (Context)表达式类别 (Expression)

其中语境类别为待翻译的资料。
透过客户端依序呼叫不同的表达式类别来完成翻译。

通常一种文法(规则)会对应一个表达式。


语言通常会是领域特定语言 (Domain Specific Language)
即专注於某个应用程序领域的计算机语言。

(例如:SQL, HTML, Regular Expressions)


优点
用来定义简单语言的文法,使它们可以被翻译。

缺点
程序码复杂度提高。
当文法变得复杂时,难以维护。


ʕ •ᴥ•ʔ:程序界的翻译蒟蒻!


<<:  Day 11 - Confusion Matrix 混淆矩阵-模型的好坏 (1)

>>:  【资料结构】图的表示方式与基本运作

Day14-TypeScript(TS)使用成员存取修饰词(Access Modifier)

今天要来介绍TypeScript(TS)使用成员存取修饰词(Access Modifier), 控制...

JavaScript学习日记 : Day17 - Async Await

上一篇介绍到Promise可以用来处理非同步行为,但始终在阅读性方面还是不是很优,今天要介绍的是基於...

Day26 :【TypeScript 学起来】Class 与 Interface 的使用

我们在前面的时候有提过 interface 是用来定义物件的型别,对物件的形状进行描述。在物件导向程...

D05 / 为什麽不会填错资料? - Inline class, Scope  & DSL design in compose

今天大概会聊到的范围 slot api modifier scope inline classes...

予焦啦!附录:那些作业系统的巨人们与参考资料

没有人是一座孤岛,而技术与软件亦然。早在 Hoddarla 抵达系列文本篇最後的基本命令列功能之前、...