⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 DEV社区 「DEV社区」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

Stackoverflows上的趋势图显示Java从2015年以后走下坡路,而Kotlin开始上升。该图形中的Java趋势不断下降,Java很容易失去其作为一种非常流行的编程语言的地位。Java会逐渐趋于衰落?并且会有很多不同的语言取而代之吗?

似乎JavaScript是目前流行的唯一一种真正护城河的语言,因为它在浏览器中运行,可能因为WebAssembly而消失。

来自Dev.to网友的观点:

1、我相信Java 作为一个平台永远不会消亡。JVM及其拥有令人难以置信的高质量库包的生态系统,加上其在大型企业环境中的深厚根基,使其成为一个值得开发的平台,并将永远继续存在。

但是,我确实认为Java 作为一种语言将越来越多地被Kotlin所取代。其他JVM语言(Scala,Groovy,Clojure)可能试图取代Java,但他们从未真正实现过这一承诺。使用Java作为主干,他们都做了截然不同的事情,但对于习惯于以“Java方式”做事的开发人员来说,他们感到很不舒服。Scala带来了纯函数式编程。Groovy让它充满活力。但是Kotlin是第一个真正被创造成为更好的Java的人,而且如果你习惯于编写Java8风格的代码,你会非常快速地接受Kotlin并坠入爱河。

但Kotlin成功的一个主要部分是它与Java的完美互操作。Kotlin很棒,因为引擎盖下,它只是Java。与普通的Java相比,Kotlin没有任何根本的不同。Scala和Groovy都有自己的运行环境,虽然它们运行在JVM上,但与Java不完全兼容。Kotlin只是编译与Java完全相同的事情,这对于增量迁移来说是一个巨大的优势,特别是在大型,缓慢移动的企业中。

2、这是一个很好的总结。我要补充一点,Kotlin实际上真的很努力(至少对我来说似乎这样)才能摆脱JVM的束缚。Kotlin Native(LLVM编译)似乎指向了那个方向。

3、我认为Kotlin根本没有试图摆脱JVM的锁定。Jetbrains团队非常高兴Kotlin仍然是一个更好的Java。我认为他们只是看到了一个很好的机会,通过使用不同的技术堆栈在多个项目中重用代码,从而提高Kotlin的知名度。

特别是Android的采用使得想要在iOS上使用相同的代码很自然,因此Kotlin / Native诞生了。同样,在服务器上使用Kotlin使得在Javascript客户端上使用相同的代码很自然,因此我们得到了Kotlin / JS。

但在这两种情况下,我认为与其他平台的分支是由与Java平台的深厚联系所驱动的,并且这将继续成为其中的佼佼者。

4、Kotlin与Java互操作很好,但并不完美。在涉及反射时尤其糟糕(请参阅data class Data(val SomeKey:String)使用jackson 反序列化时会发生什么。)

其他问题围绕着命名的函数to,in并且is在某些情况下无法使用。

更不用说一个gremlin dsl类命名了__!

Kotlin很不错,但互操作性不如Clojure的互操作甚至F#/ C#互操作

5、将安卓 IOS 和Angular react.js和vue.js相比:

6、Stackoverflows这些图表的下降趋势实际上是由于人们的较低兴趣,或者只是答案已经存在且不再需要被问及。向上趋势肯定表明增长,但下降趋势......可能只是成熟和时间的标志,不一定是人气下降。

7、在讨论Java时,企业环境会被提及很多,但在非企业环境中也是如此,任何人都在做数据科学。

Python和R可能是数据科学的工作语言,但Java仍然支持数据科学的语言。

想想所有Apache项目(Hadoop,Kafka,Solr等等) - 这些都是用Java编写的。那些不会消失或被重写或更换我不认为的任何时候。

8、Java可以越来越受欢迎和使用,同时相对于其他更流行的语言也逐渐消失。它也可以变得无处不在,就像C一样无形。

这就像Perl比以往任何时候都更受欢迎,但已经从20世纪90年代曾经占据主导地位的位置上滑了很长一段路。

也许Java已经陷入了相对默默无闻的境地。

9、一些传统的Java“模式”(Synchronized SingletonFactory Factory 和Builder,继承地狱)等趋向于默默无闻,因为Java开始获得更多函数特性,如lambdas,更好的模式匹配(即将推出)和记录类型。对于值类型,JVM本身即将发生更改,在运行时期间不会擦除泛型类型,这将使JVM作为多语言平台变得更好。

10、我认为我们会看到Java逐渐下降是一种非常受欢迎的语言,特别是在普通大学生中 - 我喜欢相信大学已经将Java推向学生很长一段时间了。这是我在CS课程介绍中学到的语言,但现在情况并非如此,或者至少那是我所看到/听到的。很多大学现在都提供Python或JavaScript的这些入门课程。

正如其他人所说的那样,Kotlin可能会替代Java,因为它几乎可以完成Java的所有工作,只需少量代码(如果我错了就纠正我) - 网络应用程序,后端程序,Android应用程序等等......

11、对我来说很烦人,不时有人会提出java已死的主题。虽然这只是普通的无知话题,但是听到java语言消失的时候更让我烦恼,不是因为它是不是真会这样,而是因为谁更关心?现在有closure 和kotlin,dotty和即将到来eta。请注意,同时java语言的确会慢慢演变。

12、Ruby很活跃,Python擅长数据科学、人工智能和ML而飙升,Java活得很好(可能不太适合新的Android应用程序,就是这样)。所有三个都是相当古老的语言。

要有效衡量“默默无闻”真的很难。

Perl就是一个很好的例子,我多年没有听说过它,它不是每个人都在谈论的酷工具,但它也没有死。

13、从长远来看,我们都死了« John Maynard Keynes»

文章目录