写点什么

JetBrains 推出新 JVM 语言 Kotlin

  • 2011-07-30
  • 本文字数:1008 字

    阅读完需:约 3 分钟

此前,人们所知的 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 网站上还有更多例程。

复制代码
<span>class</span> Greeter(name : String) {
fun greet() {
println(<span>"Hello, ${name}"</span>);
}
}
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

2011-07-30 11:264827
用户头像

发布了 184 篇内容, 共 80.9 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

预告|因“AI”而“深” 第四届OpenI/O 启智开发者大会高校开源专场25日开启!

OpenI启智社区

人工智能 开源 OpenI启智社区

预告|第四届OpenI/O启智开发者大会NLP大模型论坛强势来袭!

OpenI启智社区

人工智能 NLP 大模型 开发者大会 OpenI启智社区 ChatGPT

react源码中的fiber架构

flyzz177

React

前端leetcde算法面试套路之二叉树

js2030code

JavaScript LeetCode

Teradata 离场,企业数据分析平台如何应对变革?

Kyligence

数据分析 指标中台

ChatGPT背后:从0到1,OpenAI的创立之路

OneFlow

人工智能 深度学习 openai ChatGPT

实践篇(三):如何有效评审软件架构图?

京东科技开发者

架构 后端 软件架构 企业号 2 月 PK 榜 架构评审

ChatGPT能做什么?(内附体验攻略)

FinFish

AI工程化 ChatGPT

前端leetcde算法面试套路之双指针

js2030code

JavaScript LeetCode

用javascript分类刷leetcode22.字典树(图文视频讲解)

js2030code

JavaScript LeetCode

实时数仓Hologres新一代弹性计算组实例技术揭秘

阿里云大数据AI技术

大数据 实时数仓 弹性计算 企业号 2 月 PK 榜

直播预告 | 嵌入式BI如何将数据分析真正融入业务流程

葡萄城技术团队

大咖齐聚!OpenHarmony技术峰会豪华嘉宾阵容揭晓

OpenHarmony开发者

OpenHarmony

RabbitMQ的高可用和高可靠

做梦都在改BUG

Java 高可用 RabbitMQ 消息中间件

预告| 2月24日不见不散!开源治理专场约定你

OpenI启智社区

人工智能 开源社区 开发者大会 开源治理 OpenI启智社区

React源码分析5-commit

goClient1992

React

镇江有具有资质的等保测评机构吗?在哪里?

行云管家

等保 等级保护 等保测评 镇江

保持热爱,奔赴山海:Apache Calcite PMC 之路

字节跳动开源

flink 开源 技术 社区 Apache Calcite

React源码分析7-state计算流程和优先级

goClient1992

React

优质的双机热备软件厂家是哪家?咨询电话多少?

行云管家

高可用 双机热备 双机热备软件

通过 Istio、eBPF 和 RSocket Broker 深入探索服务网格

Kian.Lee

istio cncf ebpf sidecar-free rsocket

ThreadPoolExecutor源码细节探索

做梦都在改BUG

Java 多线程 线程池 ThreadPoolExecutor

混沌工程之 ChaosBlade 故障注入百宝箱

柠檬汁Code(binbin0325)

源码分析 混沌工程 故障注入 ChaosBlade Chaos

react源码中的协调与调度

flyzz177

React

时代背景下的 ChatGPT,到底能帮助开发者做什么呢?

泰罗凹凸曼

JavaScript ChatGPT

大咖说·阿里云云效|效能治标不治本的三个陷阱的解析

大咖说

Apache Flink 实时计算在美的多业务场景下的应用与实践

Apache Flink

大数据 flink 实时计算

React源码分析6-hooks源码

goClient1992

React

react源码中的hooks

flyzz177

React

有趣,在WSL2上运行VSCode

吴脑的键客

vscode WSL2

流批一体架构在快手的实践和思考

Apache Flink

大数据 flink 实时计算

JetBrains推出新JVM语言Kotlin_Java_Michael Stal_InfoQ精选文章