当前位置: 首页 > 工具软件 > MacRuby > 使用案例 >

嵌入式MacRuby为应用提供脚本支持

潘璞瑜
2023-12-01

\

即将到来的MacRuby支持将Ruby运行时嵌入到基于Objective-C的应用当中并为其编写脚本。Matt Mower解释了为什么选择MacRuby而不是其他Objective-C脚本的原因,还介绍了在当前MacRuby主干中可用的API。Matt用到MacRuby的应用是Elysium,一个用于生成音乐的应用

\
几乎是从一开始,我就时常在想,Elysium应该是可脚本化的。一旦应用拥有了脚本能力以后,你就能对音乐策略有更强的控制能力。比如,可以用脚本控制鼓点的节奏,以达到控制音乐“力度”的目的。
\

Matt继续讲到如何在一个Objective-C的应用中使用MacRuby,并展示了一些调用方法。例如,在一个Cocoa应用中执行Ruby源代码的方法是:

\
\[[MacRuby sharedRuntime] evaluateString:rubySource]\
\

Matt的示例也展示了一种简便的方法,在Objective-C应用中使用一小段Ruby代码来作为回调。

\ \

关于对MacRuby 0.4的具体修改,可以参见MacRuby的GitHub镜像代码库的提交页)。

\

MacRuby和Objective-C深度集成,例如,很多基础Ruby类型都直接映射到了Objective-C类型之上。因此,MacRuby有着和JRuby以及IronRuby相近的优势,例如,简便快捷的访问大量的现存程序库(比如OS X所带的程序库)。Apple已经使用Ruby(尽管不是MacRuby)来实现iPhone商业实用工具集

\

你开发Objective-C应用吗?如果是的话,你会选择MacRuby,还是选择Matt Mower列出的其他的脚本呢(Nu、JSCore、…)?

\

查看英文原文:Embedding MacRuby For Application Scripting

\
 类似资料: