写点什么

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:265006
用户头像

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

关注

评论

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

开源应用中心|Discuz!X全新PC社区体验,多种场景一站解决

Discuz! 开源社区 Discuz

揭秘 MatrixDB 数据库内核技术,可编程的数据库!

YMatrix 超融合数据库

数据库 时序数据库 分布式时序数据库 MatrixDB 超融合时序数据库

crm软件有哪些比较好?国内目前好用的crm系统推荐!

低代码小观

CRM 管理系统 企业管理系统 CRM系统 客户关系管理系统

GaussDB (for Cassandra) 数据库治理:大key与热key问题的检测与解决

华为云开发者联盟

数据库 分布式数据库 key GaussDB (for Cassandra) 数据库治理

BoCloud博云完成 E 轮融资

BoCloud博云

云计算 云原生 博云

利用这份文档,我成功定位阿里P6,却拿着P7的工资

Java 程序员 后端

AI 算法在视频可分级编码中的应用

融云 RongCloud

人工智能 音视频 编解码

工具:Juypter Notebook

正向成长

Jupyter Notebook

彻底理解 AQS我是懂了,你呢?

何小事儿

Java 多线程 并发

糟糕程序员的20个坏习惯

Kaito

架构 程序人生 后端 编程修养

优先队列一些记录以及解题思路

数据结构 Go 语言 优先队列

活动日程首公布|Apache ShardingSphere Dev Meetup 亮点新揭秘

SphereEx

ShardingJDBC ShardingSphere 技术沙龙 SphereEx

ironSource现已支持自定义广告网络

如何 30 分钟搭建一个语聊房

融云 RongCloud

初学者这样玩 TypeScript,迟早进大厂系列!

Java 程序员 后端

判断对象是否已死分析总结——JVM系列,让人茅塞顿开

Java 程序员 后端

到了2020年,技术水平到底需要达到怎样的程度才能成为顶级的阿里P8架构师

Java 程序员 后端

语聊房高质量音乐伴奏的实现

融云 RongCloud

语聊房 音乐播放

【架构设计总结】

Ryoma

利用碎片化的时间逆袭进百度,我的面试经历你敢听吗?

Java 程序员 后端

别看是Java基础,很多人已入坑,java技术栈

Java 程序员 后端

【Quarkus技术系列】「云原生架构体系」打造基于Quarkus的云原生微服务框架实践

码界西柚

云原生 Quarkus 原生云 11月日更

DDD战术设计实践

郑印

DDD

初识java-JDBC,mysql索引左前缀原理

Java 程序员 后端

利用多condition动态管理池化的异步资源背景

Java 后端

字节Android Native Crash治理之Memory Corruption工具原理与实践

字节跳动终端技术

字节跳动 Android; 火山引擎

10月书讯 | 跟着泰拉去冒险

图灵教育

编程 程序员 书单

双11大促 | 消息推送资源包6折购!一键集成华为、小米等多厂商推送通道

蚂蚁集团移动开发平台 mPaaS

消息推送 push mPaaS 双11 促销

初探Linux--鸟哥私房菜读书笔记,廖雪峰java教程百度云

Java 程序员 后端

JavaScript 解构赋值 5 个常见场景和实例

devpoint

JavaScript 大前端 ES6 11月日更

FabEdge 和 SuperEdge 联合在边缘 K8s 集群支持原生 Service 云边互访和 PodIP 直通

BoCloud博云

云原生 边缘计算 superedge FabEdge

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