JVM语言Xtend优缺点速览

Xtend是Eclipse推出的一门静态类型的编程语言,它会编译成易于理解的Java代码。Xtend源于Java并对它做了许多改进。它对于Java就像CoffeeScript对于JavaScript:代码更简洁,可以帮助开发人员减少样板代码。此外,Xtend还提供了一个基于Eclipse的IDE,并且实现了与Eclipse Java开发工具的紧密集成。

\\

近日,Java开发和软件架构网站jaxenter.com发表了一篇文章,探讨Xtend的优缺点。

\\

本文认为,可以实现与Java的零问题互操作是Xtend最值得夸耀的一点。这一点是其它JVM语言,像Scala、Clojure和Groovy,都缺乏的。Xtend能做到这点,是因为它有与Java相似的类型系统,因此在Java和Xtend代码之间就不会出现任何“阻抗失配(impedance mismatch)”。本质上讲,这意味着Java代码和Xtend代码可以互相调用。更重要的是,熟悉Java类型系统的人学习Xtend会很简单。

\\

其次,它是一门更简洁的语言,可以帮助开发人员减少样板代码。下面是《Xtend用户指南》中的一个示例:

\\
@Property String name
\\

对于上面这行代码,Xtend编译器会生成一个String类型的_name字段,并生成相应的getter和setter方法。

\\

此外,Xtend允许开发人员使用lambda表达式。它会将lambda表达式编译成匿名内部类。这非常适合需要点击监听功能的Android开发人员。而且,自2011年出现在Eclipse版本序列中之后,它已经证明,对于Android开发人员而言,它是一门方便的语言。有一位评论员甚至将它称为Android的Swift。Xtend联合创始人Efftinge表示,“用Xtend编写的Android应用程序和用Java编写的一样快,但可读性更强”。

\\

但是,Xtend现在还很不完善,其中一个最大的缺点是不支持IntelliJ IDEA。还有一个问题是,构建APK时需要额外的编译步骤,这使得一个Android应用程序需要大约20秒才能编译完整个项目。


感谢郭蕾对本文的审校。

\

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值