Lynn Greiner的文章《脚本世界现状》遭到痛批。一些人对文章明显的疏漏表示出了不满,因为文章只涵盖了PHP ,Perl,Python,Ruby,Tcl和JavaScript。Lynn只选择这些语言,因为那她是为三年前的一篇文章做的后续报道。此外,大多数IT经理即使没有亲自编写过代码,也都至少熟悉其中一种脚本语言。
然而,尽管我们已经深入了解上述五种语言,但是开发人员使用语言的却不仅限于这五种。由于每种编程语言都是适合于解决某个具体问题的工具,因此每个IT公司都能挑选一个最适合自己的语言。在本文中,我们会分享一些新兴的脚本语言,以提供些指导。
Scala
Scala对开发人员而言是别具吸引力的。按照其网站所说:“Scala...既是对象面向型又是实用型的。它混合了一些现代语言功能,同时与Java保持着密切的兼容性。”
Object Mentor的高级顾问Wampler说:“Scala是我见到的最好的一体适用的语言。Scala弥补了Java的不足,比方Java为对象面向型编程提供的支持冗繁而有限。此外,Scala支持功能性编程——在学术计算机科学界已存在很长一段时间的一种方法,但现在被证明用来编写强效并行软件非常有用。并行技术对在大型网站和企业扩展软件十分重要。”
Trampoline Systems开发人员David Ritchie Maclver认为,Scala的主要好处是能避开Java。他说:“就图书库的支持,性能和易于部署而言,我可以匹配Java。”许多Java工具也推到Scala。他认为,他的公司正为可视化软件的软件采用Scala,随着这一更新,将减少Java和Ruby的使用。
但是,Maclver并不推崇Scala的一切。他说:“为了发挥并行优势,人们会推动Scala的发展。但请不要受制于这种诱惑。因为它不能取代Java。”
Groovy
另一种语言就是Groovy,根据其网站所称,Groovy是为Java虚拟机(JVM)而设计的一种灵活而动态的语言。集Java之长,但受Python , Ruby和Smalltalk的启发,具备额外的功能和特点。
Groovy令人信服之处在哪里呢?首先提出这一问题的开源新闻平台批评家说:“我感到惊讶的是Groovy没有出现在任何地方。如果有一个动态语言能平衡企业的拥堵,那它就是Groovy。它能汇编进Java字节码,并直接利用庞大的Java库,却省去了繁琐的Java句法。几年的时间后,Python和Ruby被Groovy取代将不会使我感到惊讶。”
Groovy让Java开发的指令有效表达,同时又与Java代码保持相互兼容性。
Closure
您的公司可能会采用最新的硬件,但您的软件可以充分利用其多线程功能吗?您可能想看看Clojure,它是一个以虚拟机为目标的动态编程语言。其网站上解释说, Clojure被设计成一个通用语言,它是将高效和强劲的基础设施同脚本语言的可接近性和互动发展相结合的多线程编程。 Clojure是一种直接编辑JVM字节码的语言,却保存了完整的动态特点。每个由Clojure支持功能在运行时也获得支持。 Clojure提供对Java框架的轻松访问,通过可选类型提示和类型推断确保调用的Java可避免映射。
小?强大?Java?这三个能并存吗? Clojure是一种体积小,功能强大的语言,它在虚拟机上编辑并运行,因此不需要新的基础设施。此外,它也可以让您以更少的代码处理更多事情。这对发展进程和维护都是好事。特别有益于在缺乏像Java那样足够多的程序员开销时,利用多核硬件。
现在软件开发中最紧迫的问题在于如何更好地利用多核CPU ,以提高性能和降低能源成本。就方便与安全性而言,Clojure用于并行要比其他任何语言都要优越。它继承的Lisp极大地提高程序员的生产方式,随着时间的增长,它能实现简单的DSL创建以便商家验证程序的正确性。它能在模拟机上运行并能顺利与数百万行遗留的Java代码融合还仅是其表面现象。”
[1] [2] 下一页