GTLC全球技术领导力峰会·上海站,首批讲师正式上线! 了解详情
写点什么

Kotlin 开放源码

2012 年 2 月 16 日

JetBrains ,作为目前广受欢迎的 Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其 Kotlin 编程语言。

其基础编译器(他们将其改为 _kompiler_——开创了一系列以 K 字打头的用语——甚至连 contributors 这类词他们也用改成了 _kontributors_)可以被独立出来并嵌入到 Maven、Ant 或 Gradle 工具链中。这使得在 IDE 中开发的代码能够利用已有的机制来构建,从而尽可能的减少了在新环境中使用所受的干预,哪怕与那些没有安装 Kotlin 插件的开发人员一起合作项目也没有问题。

The IntelliJ Kotlin 插件扩展了 Java 编译器使得 Kotlin 代码能够得以编写、编译和调试。除此之外,关于基本的 Java 集合,已经有编写好的帮助函数,可以更顺畅地衔接将在 Java 8 中出现的集合扩展。

有两篇文章对 Kotlin 与 Java 以及 Kotlin 与 Scala 分别进行了比较,对各自特性和异同进行了对比。即便 Scala 可能还是更为强大些,Kotlin 还是尝试着提供比 Java 更好的函数、模式匹配、空指针预防和泛型。该语言同时也支持特征(traits)和模式匹配。

Kotlin 插件将在 IntelliJ(虽然提前使用计划已经演示了可用的构建,而 Kotlin 的快照构建也可以通过 JetBrains GitHub 网页得到,不过它还是要等到)未来发布的版本中才能使用。但是,你现在就可以在基于web 的演示中体验使用该语言,通过你的浏览器来编辑Kotlin 代码、编译并运行感受一下。

Kotlin,类似 Xtend 一样,旨在提供一种更好的 Java 而非重建整个新平台。这两种语言都向下编译为字节码(虽然 Xtend 是首先转换成相应的 Java 代码,再让 Java 编译器完成繁重的工作),而且两者都引入了函数和扩展函数(在某个有限范围内静态地增加一个新方法到某个已有类型的能力)。Xtend 是基于 Eclipse 的,而 Kotlin 是基于 IntelliJ 的,两者都提供无界面构建。能够首先演变到其他 IDE 的语言有可能成为最后的赢家。

Alex Blewitt 可以通过其 Twitter @alblue 来联系,他经常在博客 alblue.bandlem.com 上发表博文。

查看英文原文: Kotlin Open Sourced

2012 年 2 月 16 日 07:121909
用户头像

发布了 52 篇内容, 共 14.0 次阅读, 收获喜欢 2 次。

关注

评论

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

下载的附件名总乱码?你该去读一下 RFC 文档了!

Java课代表

Spring Boot

hive拉链表优化·百亿量级数据支持准实时更新

誓约·追光者

hive 实时数仓 海量数据库的设计与实践

【架构师训练营】第 10 周总结

花生无翼

对微服务架构的理解

朱月俊

微服务&DDD&中台

dony.zhang

中台 微服务 DDD

架构师课作业 - 第十周

Tulane

架构训练营第十周作业

张锐

Dubbo微服务调用过程时序图

2流程序员

架构师训练营第十周作业

吴吴

练习 10-1

闷骚程序员

【架构师训练营】第 10 周作业

花生无翼

week10 总结

雪涛公子

微服务与DDD

走过路过飞过

week 10作业

a晖

【架构师训练营 - week10 -1】作业

早睡早起

架构师第十周

Tulane

架构训练营第十周感悟

张锐

极客大学架构师训练营 --第10周

李朋

week 10 总结

a晖

堆栈神奇应用之CXO让我做一个计算器!!

架构师修行之路

数据结构 堆栈

Eureka常见问题汇总及注意事项

xcbeyond

Java SpringCloud Eureka 服务注册与发现 常见问题

来自面试官的技术面试题

xcbeyond

Java 数据库 自我介绍 面试经验

Dubbo的服务注册与调用

superman

对中台思维的思考

朱月俊

让我们慢慢地成长

姜海天

个人成长

架构师课程第十周总结

dongge

架构师训练营Week10作业

Frank Zeng

架构师训练营Week10学习总结

Frank Zeng

Dubbo微服务调用时序图及微服务架构个人见解

潜默闻雨

week10 作业

雪涛公子

OAuth 2.0

陈皮

DNSPod与开源应用专场

DNSPod与开源应用专场

Kotlin开放源码-InfoQ