0

最近,我的项目经理要求我从事 InterSystems Cache ObjectScript 的工作。早些时候,我曾经担任 Java 开发人员 (J2EE)。所以我的问题是缓存与java有什么不同。比较会很棒。

4

1 回答 1

5

Caché ObjectScript 与 Java 非常不同,并且几乎没有共同之处。它更像是动态类型的编译脚本语言,具有内置的元语言(类定义)以及编写好的代码需要知道的大量特性。所有代码都被编译为低级(但可读性很强)的所谓例程代码,并由 DBMS Caché 及其应用程序引擎处理。

这个参考为例。您可能会注意到,有许多奇怪的符号和结构,例如$, $$, $$$, ##class, &sql(...), &javascript<...>, #dim, $System, .#, $get, $zu(...), %, ^%, { ... }, ...(这个列表很大)。乍一看,有些语言特性是非常不可预测的。例如,函数$get(...)看起来像一个基金,但它的行为却像一个 try/catch 语句,以及$data其他一些系统函数。

所以准备好使用 InterSystems 文档吧!此外,最近开发的InterSystems 社区是一个很好的资源。在谷歌搜索时,您可能会从互联网上找到很多答案,但请记住使用“intersystems”或“objectscript”关键字进行搜索。但是很多东西在那里找不到,在这种情况下,您应该使用 InterSystems 文档或社区来提问。一旦你习惯了这种语言(对我来说花了 6 个多月的时间),你就会对它更有信心。

另外值得一提的是,Caché ObjectScript 是字面意义上的“恐龙”语言,它会随着时间的推移而不断升级。这就是为什么有这么多不同的功能。其中一些你不应该再使用了:例如,你应该使用类,而不是像人们在引入 OOP 概念之前那样在常规中编写代码。ObjectScript 的 JSON 功能(在 ObjectScript 中编写 JSON 的能力)是在大约 1 年前引入的。您可能会在 Caché 中找到大量“史前”代码,并且应该正常使用:它是一个非常庞大的生态系统。

希望这会有所帮助,快乐的黑客!

于 2017-12-22T09:14:45.077 回答