最近,My Project Manger邀请我使用InterSystems Cache ObjectScript。之前我曾经是Java Developer(J2EE)。所以我的问题是Cache与java的不同之处。比较会很棒。
答案 0 :(得分:3)
CachéObjectScript与Java非常不同,几乎没有共同之处。它更像是动态类型的编译脚本语言,内置了元语言(类定义),并且需要知道很多功能才能编写好的代码。所有代码都编译为低级(但非常易读)所谓的例程代码,由DBMSCaché及其应用程序引擎处理。
以this reference为例。您可能会注意到,有许多奇怪的符号和结构,如$
,$$
,$$$
,##class
,&sql(...)
,&javascript<...>
,{ {1}},#dim
,$System
,.#
,$get
,$zu(...)
,%
,^%
,... (这个名单很大)。从第一眼看,一些语言功能是非常难以预测的。例如,函数{ ... }
看起来像一个基金,但是静默地就像一个try / catch语句,以及$get(...)
和其他一些系统函数。
准备使用InterSystems文档!此外,最近开发的InterSystems community是一个很好的资源。谷歌搜索时,您可能会从互联网上找到很多答案,但请记住使用“intersystems”或“objectscript”关键字进行搜索。但是你在那里找不到很多东西,在这种情况下你应该使用InterSystems的文档或社区来提问。一旦你习惯了这种语言(我花了6个月的时间),你会对它更有信心。
另外值得一提的是,CachéObjectScript实际上是“恐龙”语言,随着时间的推移涉及并升级。这就是为什么有这么多不同的功能。其中一些你不应该再使用了:例如,不像在OOP概念介绍之前那样在常规中编写代码,你应该使用类。 ObjectScript的JSON功能(在ObjectScript中编写JSON的能力)仅在大约1年前被引入。你可能会在Caché找到大量的“史前”代码并且应该正常使用它:它是一个非常庞大的生态系统。
希望这会有所帮助,快乐的黑客攻击!