你是一个走在前沿的 Java 开发者吗?

发表于:2016-12-01 13:58

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:程序师    来源:51Testing软件测试网采编

  什么样才算是走在前沿的Java开发者?他们就只写Java或者能在JVM上运行的语言吗?Scala开发者或者Java开发者使用同样的JVM?
  显然这里是有一些意见上的分歧,并且他们对于 JVM 社区也并不太积极。那么成为一个JVM 上的前沿开发者有什么意义?在JVM上已经有了很多语言像 Scala,Kotlin 和 Clojure,这些语言已经成了新的发展方向。
  JVM 上的所有语言都受到欢迎?
  你会同时写两种(或者两种以上)的语言吗?这样的评论就算了吧。
  …,相对用两个语言这么大的开销,Java 8其实也没有多大的问题。
  忽略语法的问题,作者相信现在的开发者包括我自己不会去学一个新语言并且然后再去支持这个语言。
  这个也出现在那些对让其他语言有和JVM速度一样不感兴趣甚至公开否定的人群中。
  是Scala语言战争宗教原教旨主义的战斗。
  或者你还痴心妄想主宰这场战争,不好意思兄弟..
  所以一个代码库当中为什么不能包含多种语言呢,而且开发人员同时能在代码库中支持所有语言。
  Java生态系统是为实现功能使用正确的库,所以为什么总会有些人不允许使用正确的语言去编写软件呢?
  最近的工作描述
  最近收到一些招聘人员发来的招聘信息,我觉得很有意思。我阅读这些招聘信息,能够很好地了解到当地招聘市场的形势。为了保持简洁,我把重要的部分记录了下来。
  JAVA工程师
  … 尖端技术 … 目前,正在寻求一名Java工程师 … Rest API 中间层 … 增强 ETL 流程 …
  所需技能:
  精通现代的Java技术: Scala, AKKA, Play Framework
  …
  能够在快节奏的环境中茁壮成长
  该描述列出了Java语言所需的技能,如Scala,Akka和Play Framework,这是 LightBend’s Scala-side Reactive Platform ,被称为“现代”的Java技术。“我知道这会使一些读者生气,就好像 一个无名的Java 传教士在描述我使用的Scala,AKKA和Play为“晦涩难懂的技术”。
  这让我笑得如此艰难
  晦涩难懂的技术
  有一些人认为JVM只用于Java语言和Java开发人员,并且会公开批评那些在”他们“的世界里谈论其他技术的人。我在DZone遇到过一些,在某种程度 上这种行为是很自然的,因为很多人会批评他们难以理解的东西,当他们看到自己的位置受到了威胁,就会抵抗, 而他们只是想推动心中的FUD(恐惧,不确定性和怀疑)。
  我曾经的一个同事,有一次他从读过的美国陆军生存训练手册中给了一个摘引。 这个摘引可以在网上找到几个版本,这是我喜欢的一个:
  生存有两种最严重的危险,是对舒适和被动前景的让步。这些危险必须被认为是其一般影响及其与特定生存压力关系的原因。 这两种危险都代表了遵循最小阻力线的态度,并推翻你应付压力的努力或欲望。 这两种危险都代表了主要对当前情况的关注的态度,而不是生存的总体问题。 要成功地生存,你必须能够掌握这两种趋势。
  我相信软件的发展是使原本不能视新科技为进步的人接受它,而不是去挑战那些深入人心的东西。我曾一直看着我们行业的变化,我看到他们每十年左右的变化。能够适应和改变,不仅让我这么多年生存下来,而且让我在软件开发的世界里繁华了四十多年。
  结论
  显然,Java是JVM上最受欢迎的功能丰富的语言,但在过去的十年里,新特性发展速度最慢。有人说这是因为Java语言是成熟和完整的,其实我们大多数人 比谁都明白。我认为许多新的JVM语言被发明出来,证明Java语言是不足的,Java语言将不再满足许多开发人员的需求。那么对于JVM的其余部分这意 味着什么呢?
  插话
  你认为在JVM上运行的所有语言都值得需要相同的时间和计算吗?
  同时学习使用多种第一代语言,我们能成长吗?
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号