ObjectScript 还支持定义替换的宏。定义可以是一个值、整行代码或(使用 ##continue 指令)多行。使用宏来确保一致性。例如:
#define StringMacro "Hello, World!"
write $$$StringMacro
Include Files可以在例程中定义宏,并稍后在同一例程中使用它们。更常见的是,在中心位置定义它们。为此,需要创建并使用包含文件。包含文件定义宏并且可以包含其他包含文件。
可以混合使用 ObjectScript、Python、 SQL、类定义、宏、例程等的原因是 IRIS 不直接使用编写的代码。相反,当编译代码时,系统会生成它使用的较低级别的代码。这是由 ObjectScript 引擎使用的 ObjectScript 的 OBJ 代码,以及由 Python 引擎使用的 Python 的 PYC 代码。
有多个步骤。无需详细了解这些步骤,但最好记住以下几点:
Python 方法之外的所有元素,类编译器将类定义和 ObjectScript 代码处理为 INT 代码。 Python代码被处理成PY代码。在某些情况下,编译器会生成并保存您不应编辑的其他类。例如,当编译定义 Web 服务和 Web客户端的类时,就会发生这种情况。
类编译器还为每个类生成类描述符。系统代码在运行时使用它。
ObjectScript 代码,预处理器(有时称为宏预处理器或 MPP)使用包含文件并替换宏。它还处理例程中的嵌入式 SQL。这些更改发生在临时工作区中,并且代码不会更改。
INT 代码。INT 代码和 PY 代码是中间层,其中通过直接Global访问来处理对数据的访问。该代码是人类可读的。INT代码用于生成OBJ代码,PY代码用于生成PYC代码。 IRIS 虚拟机使用此代码。一旦将代码编译为 OBJ 和 PYC 代码,代码执行就不再需要 INT 和 PY 例程。IRIS 有一个实用程序,可以删除给定类的类内部和中间代码;可以在部署应用程序时使用此实用程序。如果检查 IRIS 系统类,可能会发现某些类看不到,因为它们处于部署模式。
注意:所有类定义和例程都与生成的代码存储在同一 IRIS 数据库中。这一事实使代码更易于管理。 IRIS 提供了一组强大的源代码控制挂钩, 开发人员已使用这些挂钩多年。也可以使用这些挂钩。
全部0条评论
快来发表一下你的评论吧 !