示意图:
使用案例: 比如你需要在手机上开发一个组件,但是手机上开发对于代码的输入、调式、编译来说是一件比较痛苦的事情,从而就想使用pc端进行开发,但pc端和手机系统执行的指令不一样,要用pc端开发,故要用到解释器模式。
解释器是一个软件虚拟机,一般包括四个组件:
- 解释引擎
- 被解释的伪程序
- 解释引擎的控制状态的表示
- 被解释的程序当前状态的表示
解释器通过构建一个虚拟机来延申当前计算平台的功能
优点:
- 功能上的延申,可以模拟和提供当前计算平台所不具有的功能
- 在测试上提供一个安全的和低成本的解决方案
- 提供了更多的灵活性
缺点:(主要体现在模拟上)
- 性能和执行效率问题
- 比硬件实现慢很多很多
- 比编译的程序也慢很多
- 测试
- 需要额外构建软件