FileMaker世界中模块化脚本的定义是什么?

时间:2010-01-23 18:13:39

标签: scripting filemaker modular

如何在FileMaker上下文中定义模块化脚本?我还没有故意提供我的定义。我想知道你的想法。谢谢!

4 个答案:

答案 0 :(得分:1)

FileMaker中的Modular Scripting体现了面向对象编程的精神。即,脚本应该被建模为具有窄焦点的可互操作的功能对象/模块的集合。在FileMaker中,这些模块应该支持通过参数传递的值,而不是从当前上下文派生。脚本模块应返回结果(例如,成功,失败,取消等)以及调用脚本中可能需要的值。较大的例程应该依赖于许多较小的模块来执行任务,允许您轻松查明故障,并允许模块重用于许多任务。

答案 1 :(得分:1)

模块化脚本是一种执行有用功能的脚本,该脚本之外没有外部依赖项。这与我称之为“一次性”脚本的情况形成对比,该脚本只需要很少或没有参数,但具有特定于其正在使用的文件的依赖性。

理想的模块化脚本采用零输入,执行一些有用的功能,并且不需要处理其结果。一个例子是一个脚本,它调整当前窗口的大小以使当前窗口居中于屏幕上。由于没有I / O连接,并且在脚本本身之外无需更改,因此使用此脚本无需任何成本。

更实际的例子需要输入参数和输出结果。但是,请记住,随着参数传递的数量和复杂性的增加,模块化的好处会减少。有一个转折点,“一次性”,非模块化脚本的简单性需要很少或没有参数是更好的选择。

答案 2 :(得分:0)

Modular Scripting是一种编写脚本的方式,这样每个脚本在被复制到另一个解决方案时,在任何时候都可以正常工作。

“正常工作”意味着正确识别自己的上下文和参数,并执行正确的操作或报告正确的错误/结果代码,并遵循脚本中包含的文档作为主要注释。

答案 3 :(得分:0)

FileMaker中的Modular Scripting使面向对象编程的继承属性适应FileMaker的工作方式。 Modular Scripting希望通过识别FileMaker不是面向对象的平台,而是面向上下文的平台,尽可能地复制和粘贴。

Modular Scripts可以通过调用上下文传递给它们的基于值的参数或通过为自己识别操作上下文来控制自己。模块化脚本可能依赖于FileMaker系统中的某些图案化结构,但可能不依赖于通过参数通知脚本的任何特定模式或上下文,或者可以推断(例如通过Get()和Design函数)。

例如,模块化的“打印报告”脚本可能需要告知要打印的布局,甚至可能要求找到的集合按OnLayoutLoad或OnModeEnter触发器排序,但模块化的“打印报告”脚本则不需要一个名为“Print Report Layout”的特定布局或一个特定的“Table :: SortThis”字段,除非这些布局在给定解决方案中对于脚本的多个不同应用程序是通用的。

因此,可以调用单个模块化脚本来执行适用于许多不同上下文的相同任务。