1. 程式人生 > >設計模式 (二十一)直譯器模式

設計模式 (二十一)直譯器模式

直譯器模式

直譯器模式的場景就是一個計算器,計算簡單的+,-運算,a+b-c, a-b+c這種,給出a,b,c的值,計算表示式結果。需要設計一個表示式分析。

直譯器是一種按照規定語法進行解析的方案,在現在專案中使用極少。

直譯器模式的優點

  • 擴充套件性較好

直譯器模式的缺點

  • 直譯器模式會引起類膨脹
  • 直譯器模式採用遞迴呼叫方法。 除錯複雜
  • 效率問題。 大量採用遞迴和迴圈,效率差

不太推薦用, sql分析這種,現在有專門工具,可以採用其他指令碼語言,如js的eval,完成相關工作。