2KB项目,专业的源码交易网站 帮助 收藏 每日签到

JVM 言语的兴衰史

  • 时间:2019-05-14 16:49 编辑:2KB 来源:2KB.COM 阅读:392
  • 扫一扫,手机访问
  • 分享
摘要: 英文原文:The
英文原文:The Rise and Fall of JVM Languages

不论甚么时分,都会有一些猜测 Java 毁灭的帖子呈现。但风趣的是,这些帖子从不写预言成真的日期。说假话,它们说的都算准确,由于这是每种言语的终极运气都是:毁灭埋没,精确地说是愈来愈少地被应用到新项目中。问题是:最初谁会代替它们呢?

上周我们在 InfoQ 一篇异样类型的文章。最少,这篇文章说出来这个言语可能的替换者 Kotlin。这让我对 JVM 的言语近况和趋向有了很多考虑:留意,言语的趋向与每一个言语的技术长处和缺陷有关。

其它翻译版本 (3) 加载中

我于 2001 年年末Start做 Java 开发,事先,Java 是真的很酷。每个新开发者都想运用所谓的新技术:不管是 .NET 仍是 Java,而有经历一些的开发者运用的是 COBOL。我在黉舍进修了 C 和 C++,所以 Java 内存管理关于我来讲十分容易。我对 Java 很称心,但并非每一个人都这么以为。

Groovy 降生于 2003 年。但我不记得我是甚么时分Start进修它的。而实践上:运用它后我不再需求一门剧本言语了。在具有多个开发团队并长工夫开发企业级使用顺序的布景之下,静态类型比拟静态类型具有宏大优势。特别在实行产品测试以反省类型系统时。我独一需求创立剧本的时分,是作为 WebSphere ***时:选择 Python 仍是 TCL。

其它翻译版本 (1) 加载中

一年以后,Scala在2004年被我承受。 我不记得是甚么时分和是如何晓得Scala的,但那时分的确是很晚了。与Groovy相反,我决议尝尝它。首要的来由是我长久以来对创立“更好”的代码(更好的可读性和可保护性)感兴味。Scala是静态类型的,它更像我正在寻觅的工具。我报了Coursera课程Scala中的函数式编程道理。它有三个首要的影响:

  • 它让我质疑我写Java代码的方法。 例如,为何当我设计类时要主动生成getter和setter办法?

  • 对大大多数开发者来讲,我感到Scala很轻易写有缺乏可读性的的代码——包含我。

  • 我Start寻觅其他替换言语。

在 Groovy 和 Scala 以后,第二代(假如你把 Java 也举动当作第一代的话,则是第三代)JVM 言语包含:

大致阅读一遍后,我确信他们没有太多的吸引力,不值得我投入工夫。

几年前,我决议自学根本的 Android 开发,以便可以了解Mobile开发者的开发情况。好家伙,即便有多年开发 Java EE 和 Spring 使用顺序的经历,但它还真给我一个欣喜了 - 还不是高兴的那种。这就像回到过来十年前那样的开发体验,Android  API 十分初级,更别说在当地测试使用顺序。颠末疾速的搜刮相干信息,我发明 Kotlin 在非常多地方被提到,所以最初决议试一试。我立刻爱上 Kotlin 了,得亏它的扩大功用,我可以将现有的渣滓 API 改良得更好,乃至更优雅。我Start更多的发掘这门言语,并Start在Server端项目中运用 Kotlin。然后,Spring 框架公布了与 Kotlin 的整合。然后在 Google I/O 大会上,Google 也公布在 Android 开发中官方支撑 Kotlin。

这篇文章基于我个人的体验和观念。假如你更爱好浏览你赞成的帖子,请随时中止浏览。

除我本人的经历,这些言语的近况是怎么呢? 我在Google Trends中实行了一个疾速搜刮。

有几件风趣的工作值得存眷:

  • Google曾经辨认到诸如Scala、Groovy和Kotlin作为"编程言语"的搜刮关键词,而没有把Ceylon和eXtend作为关键词。关于Ceylon来讲,我只能伪装它是由于Ceylon是一个受欢送的地方。关于eXtend,生怕是由于大师很少在Google中搜刮它。

  • Scala是迄今为止最受欢送的,其次是Groovy和Kotlin。我没有关于Scala的真实线路图。

  • 蒲月份的Kotlin搜刮巅峰是与谷歌在Google I/O上的支撑通知布告相干的。

  • 大大多数搜刮Scala和Kotlin的数据来自中国,思索到天文地位上的均衡,Groovy更胜一筹。

  • Scala搜刮与术语“Spark”激烈相干,Kotlin搜刮与术语“Android”相干。

进一步发掘可能会发明风趣的现实:

  • xTend没有死,由于它从未活过。历来没有读过任何干于它的帖子。历来没有听过一个关于它的峰会。

  • 2017年,红帽公司将Ceylon捐赠给Eclipse基金会,创立了Eclipse Ceylon。将软件赠予给基金会的个人行动可能会被分歧的方法说明。在这类状况下,虽然缭绕这一举动实行了牢靠的会谈,但这其实不意味着Ceylon的将来。

  • 2015年,Pivotal中止资助Groovy,并转移到Apache基金会。固然我置信Groovy有足够的支撑根底,而且在JVM剧本上也是无独有偶的,但这并非一个好兆头。这与Groovy中心创立者的提交频率相干:它们的提交次数急剧减少 - 到某些中止点。

  • 风趣的是,Scala和Kotlin比来都入侵了其他范畴,并将其翻译成JavaScript并编译成原生代码。

  • 在Java中,JEP 286是运用类型揣度来加强言语的提议,这是Scala和Kotlin曾经供给的功用。但是,它仅限于部分变量。

  • 成心思的是,经过保存言语的一小部分,来尽力晋升Scala编译工夫。然后提出问题,为何要坚持Scala,假如你丢弃它弱小的功用(如宏)?

我其实不善于猜测,但这是我的一些瞻望:

  1. Groovy具有本人的强项——剧本,这就留下Java、Scala和Kotlin在Server真个JVM上为纯使用顺序开发而抢夺占用率。

  2. Scala也创始了本人的范畴。Scala开发职员凡是以为这类言语优于Java(或Kotlin),而不会转移到另外一种言语。但是,因为Spring和Google的通知布告,Kotlin可能会成为对Java不称心的开发职员的Scala的替换。

  3. Kotlin已在Android疆场上获胜。Scala过来无视了这个范畴,而且不会在未来中继续投入,因而Kotlin在这场竞赛中曾经遥遥抢先了。

  4. Kotlin在手机上的突起不是一个预期中的举措,而是一个不错的意想不到的欣喜。JetBrains一旦留意到这个趋向就把它用作了行进的路标。

  5. Kotlin与Java的互操作性是杀手级此外功用,这可能会压服管理者将遗留项目迁徙到Kotlin上然后Start新项目。正如Java的不连续的后向兼容性一样。

亲爱的读者,虽然(特殊是)你分歧意上述的观念,但我将对你的看法十分感兴味。只需你有礼貌地供给现实,并证明你的观念便可。

本文中的一切译文仅用于进修和交换目标,转载请务必注明文章译者、出处、和本文链接。 2KB翻译任务按照 CC 协议,假如我们的任务有进犯到您的权益,请实时联络我们。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部