BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

JetBrains推出新JVM语言Kotlin

| 作者 Michael Stal 关注 0 他的粉丝 ,译者 马国耀 关注 1 他的粉丝 发布于 2011年7月31日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

此前,人们所知的Kotlin是圣.彼得堡以西三公里外的一座俄罗斯小岛。而近期,捷克公司JetBrains推出一款运行在JVM(Java虚拟机)上的编程语言,也叫Kotlin。开发者称,设计它的目的是避免Java语言编程中的一些难题。

JetBrains的主要产品包括Java IDE、PHP、Objective-C、Ruby和MPS。而现在Kotlin项目将他们带入一片未知领域。

该语言开发者们强调,其背后的主要设计目标是:

据JetBrains称,Kotlin是一门静态类型、面向对象、基于JVM、旨在服务与行业、避免由Java的向后兼容性引起的常见问题及挑战的编程语言。

比如,由于类型系统控制了空指针引用,所以Kotlin不需要空指针异常(Null Pointer Exception)。Kotlin中没有基础类型,数组是定长的,泛型(generic)是安全的,即便运行时也是安全的。此外,该语言支持闭包,还可通过内联进行优化。不过,它不支持检查异常(checked exceptions),许多语言设计者认为这是它的瑕疵。不论如何,重要的是Java和Kotlin之间的互操作性:Kotlin可以调用Java,反之亦可。

以下代码片段显示的是用Kotlin实现的一个简单的面向对象“Hello World”程序。JetBrains网站上还有更多例程。

class Greeter(name : String) { 
      fun greet() {
          println("Hello, ${name}"); 
      } 
} 

fun main(args : Array<String>) { 
     Greeter(args[0]).greet() 
}

许多语言都认为自己可以替代Java。具体来说,有Scala、Fantom、Groovy、Gosu、和Ceylon,它们批次自然地互相竞争者,而Scala和Groovy则最为流行。

现在,多个讨论组都在比较Kotlin和其他语言,有时还非常激烈,比如Fantom网站和Scala用户组的讨论。

有多少程序员会考虑使用Kotlin来进行开发还需要观察。不过,许多开发者的反应已经证明了Kotlin已进入下一代语言的有力竞争者之列。

据报道,公开Beta版在2011年底就可用了,到时在Apache 2许可下会有一个开源编译器和IntelliJ IDEA插件。虽然该编译器最初生成的是Java字节码,到那时会有一个Kotlin版本,它生成JavaScript。


查看英文原文:JetBrains introduces the new JVM language Kotlin

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT