JavaEE还是Spring? 都不行! 我们呼吁新的竞争者!

如果您一直在Twitter上关注一些Java的关键人物,或者在Reddit上阅读了“新闻”,那么您一定不会错过Spring和JavaEE宣传人员之间热闹的“贱人之战”(请原谅我的法语)。

首先,于尔根·霍勒(JürgenHöller)的挑衅性文章:

“ Java EE 7,第二个生日快乐! 生产情况如何?”

然后, Reza Rahman的回应:

“ Java EE 7生产中的幽灵:过去,现在和未来”

在这之间,有数百条同样有趣的推文。

如果还没有,取出爆米花:)

巨魔营销

诺基亚3310

在Data Geekery ,我们当然不熟悉我们喜欢称之为“巨魔营销”的有趣且有效的技术,例如,当我们最近反对Java EE和Spring都(滥用)注释时 ,或者当我们将Hibernate与老式的诺基亚3310进行比较时 。

是孩子气,是的。 但这也是有效的。 这样做有效的唯一原因是,这样做会激起黄蜂的巢。 毕竟,您有一个要点,您就开始引发一个两极分化的讨论,没有正确/错误的答案,所有参与者都将无法接受并因此而战斗。 当他们在战斗时,您可以在每条消息中加入您的品牌。 答对了。

Spring人们做的事情完全一样。 如果您听过Pivotal的Josh Long的演讲,那么您肯定会注意到,很多演讲只是对Internet Explorer之类的抱怨 。 如果您不是那种个人,认真和/或字面意思地对待一切的人,那么这样的谈话可能会很有趣。

这里有趣的一点是,“标准”布道者对Spring的挑衅性文章反应过度。 在Reza的文章的底部,有一个Bert Ertman的链接演示文稿,该演示文稿支持Java EE(并且说Reza认可了本次演讲的内容风格是没有错的):

JavaOne 2011:将Spring应用程序迁移到Java EE 6
伯特·埃特曼

我要在这里说明的重点不是两个相对的技术供应商试图建立自己的社区,以说服人们他们的技术更好(这是特斯拉与爱迪生之间早就进行的工程师工作)。

我要在此说明的重点是以下事实:其中一个供应商声称自己是“标准”,使自己(JCP = Oracle)在真实的标准委员会(例如ISO,DIN,w3c, IETF。

JavaEE是标准吗?

在某种程度上是这样。 就像Spring一样,这是事实上的标准。 这是一群非常松散的小型利益集团,主要由甲骨文(和其他供应商)管理,他们试图通过替代性“专有”技术来促进和确立其利益和技术。

JavaEE是历史悠久的“标准”。 它一直是一个相当“弱”的标准,这就是为什么首先创建Spring的原因。 Oracle的Reza对Spring故意挑衅的反应如此敏感的事实可以解释为一个迹象,表明“标准”仍然很薄弱,并且作为替代品受到Spring的威胁。

可以对Siebel与Salesforce进行有趣的比较。 Siebel是CRM行业中事实上的“标准”,但是Salesforce如此严重地骚扰了Siebel,以至于Siebel甚至在就收入水平达成远程会议之前就已经承认Salesforce是其业务的真正竞争对手。 这最终导致了Siebel的灭亡,并被Oracle托管,甲骨文托管了许多JCP,这真是具有讽刺意味。

Java EE和Spring也发生了同样的事情。 现在,即使在完全(当然)专有的情况下,Spring在市场上也是如此成功,以至于Java EE将不得不努力争取回到Spring之上。 比仅仅说出陈旧而me脚的“标准”论点要困难得多。 Java EE必须比Spring更好和更快,而不仅仅是“标准”。 尽管所有JCP政治都在进行,但我看不到这种情况发生。

那么,春天会赢吗?

我的预测是:不。

整个故事只向我们表明Java生态系统中的标准很弱。 市场上有大量玩家。 像Hibernate和jOOQ这样的利基产品可以撼动数据库访问市场的份额。 诸如GWT , Vaadin , ZK , Spring MVC , Play Framework等小众产品可以撼动HTML UI市场领域(JSF或JSR 371不能阻止该领域进一步的市场分化)。

哎呀,诸如Akka或Vert.X之类的与语言无关的技术表明,甚至Servlet API也不是真正可靠和安全的。 随着Oracle引入Nashorn,整个JavaScript生态系统可能同样会威胁Java EE。 我怀疑,接下来的5-10年里,唯一可以想当然的是JVM和Java SE JDK及其库,包括JDBC。

目前我们的行业发展如此Swift,像JCP这样的高度分散的政治委员会似乎无法跟上步伐并提供我们在其他地方看到的质量和创新。

换句话说,Java EE“标准”仅是公认的成熟技术落后5-10年的时间。 前一段时间证明。 考虑到像Pivotal这样的单一玩家已经成功挑战了“标准”超过10年,我怀疑新玩家可能很快会用新的替代品进入市场。

谁将成为新玩家?

其中之一将是即将重命名的Typesafe 。 您为什么认为他们毕竟被重新命名了? 您认为他们想用Akka + Play + ConductR证明什么? 他们试图证明您可以在JVM之上完全不同地开发软件,这就是他们试图证明的。

此外,他们使用的是Pivotal / Spring如此成功的低内容,高情感巨魔营销技术。 到处都可以使用邪恶的术语“ monolith”(= Java EE,还有其他功能):

整体式

其中另一个可能是……微软! 为什么不? 他们最近的开源采购举措可能最终将有助于在Linux之上建立.NET。 一旦您使用了Linux,您最好也可以使用JVM。 .NET生态系统比Java更紧密,这将对我们的生态系统施加很大的创新压力。

微软Linux

当JCP仍在从改变游戏规则的数据交换API JSR-353 , JSR-367和JSR-374背后的政治中恢复过来时,所有这一切都在发生

有趣的未来

上述预测可能会或可能不会成立。 但是我很确定一件事。 在不久的将来,我们将面临更多竞争,因此我们的基础架构软件将有更多选择。 当前的事实上的标准将失去市场份额。 对他们来说是不幸的,对我们来说是更好的技术。

当福音派工作者在打架时,我期待着JVM上一个非常有趣的未来。

翻译自: https://www.javacodegeeks.com/2015/06/javaee-or-spring-neither-we-call-out-for-a-fresh-competitor.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/359269.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

编程技术交流

需要技术交流包含java:HTML, MySQL, Redis, Linux ,Nginx ,Tomcat , IntelliJ IDEA ,SVN , Eclipse ,Maven , RationalRose, Java SE,…

visa linux 串口 通信,使用visa进行串口通信

最近因为项目的原因,都在研究上位机通信问题。这两个星期研究还是蛮多心得,下面就写写关于使用visa进行串口通信的内容LABVIEW软件LabVIEW 在仪器控制方面,还是很有优势的,把你仪器给你,读懂指令,然后估计半…

POJ 2398 Toy Storage

这道题和POJ 2318几乎是一样的。 区别就是输入中坐标不给排序了&#xff0c;_|| 输出变成了&#xff0c;有多少个区域中有t个点。 1 #include <cstdio>2 #include <cmath>3 #include <cstring>4 #include <algorithm>5 using namespace std;6 7 struct…

linux共享磁盘给指定ip,linux想挂载通过ipsan协议推送上来的磁盘,两个ip共分配了21个未分区的盘,...

先安装iSCSI initiator以及iscsiadmiscsiadm是基于命令行的iscsi管理工具&#xff0c;提供了对iscsi节点、会话、连接以及发现记录的操作。iscsiadm的使用说明可以查看/usr/share/doc/iscsi-initiator-utils-6.2.0.742/README&#xff0c;也可以运行man iscsiadm或iscsiadm --h…

【APICloud系列|1】华为应用市场 应用版权证书或代理证书怎么填

将apk上传到华为应用市场 首页提交的时候是没有问题的&#xff0c;但是第二次需要更新的时候发现多了一个必填的选项 我的应用被打回来啦&#xff0c;说明这个免责函需要要填写。今天公章还不在公司&#xff0c;还着急上线&#xff0c;不能准时上线就扣20%的工资。

【APICloud系列|2】上架安卓应用商店全套流程(小米应用商店、华为应用市场、阿里应用商店、百度手机助手、腾讯应用宝)

​​本次主要讲解前5个平台上架流程及注意事项(注册登录信息自行准备) 1. 腾讯应用宝:http://open.qq.com/ 2. 阿里应用商店(淘宝手机助手,UC应用商店,豌豆荚):http://open.uc.cn/ 3. 百度手机助手:http://app.baidu.com/ 4. 华为应用市场:http://developer.huaw…

socket阻塞与非阻塞,同步与异步、I/O模型

socket阻塞与非阻塞&#xff0c;同步与异步 1. 概念理解 在进行网络编程时&#xff0c;我们常常见到同步(Sync)/异步(Async)&#xff0c;阻塞(Block)/非阻塞(Unblock)四种调用方式&#xff1a;同步&#xff1a; 所谓同步&#xff0c;就是在发出一个功能调用时&#xff0c;…

linux基于域名的虚拟主机,Nginx虚拟主机应用——基于域名、IP、端口的虚拟主机...

Nginx支持的虚拟主机有三种●基于域名的虚拟主机●基于IP的虚拟主机●基于端口的虚拟主机每一种虚拟主机均可通过“server{}" 配置段实现各自的功能基于域名的虚拟主机实验环境1.基础源码包(无密码):https://pan.baidu.com/s/14WvcmNMC6CFX1SnjHxE7JQ2.CentOS 7版本Linux虚…

Mono for android,Xamarin点击事件的多种写法

&#xff08;一&#xff09;原本java的写法&#xff08;相信很多是学过java的&#xff09;&#xff1a; 需要实现接口View.IOnClickListener&#xff0c;最好也继承类&#xff1a;Activity&#xff0c;因为View.IOnClickListener接口又继承了IJavaObject, IDisposable接口&…

一句话木马绕过linux安全模式,一句话木马(webshell)是如何执行命令的

在很多的渗透过程中&#xff0c;渗透人员会上传一句话木马(简称webshell)到目前web服务目录继而提权获取系统权限&#xff0c;不论asp、php、jsp、aspx都是如此&#xff0c;那么一句话木马到底是如何执行的呢&#xff0c;下面我们就对webshell进行一个简单的分析。首先我们先看…

第六章 Qt布局管理器Layout

第六章 Qt布局管理器Layout 大家有没有发现一个现象&#xff0c;我们放置一个组件&#xff0c;给组件最原始的定位是给出这个控件的坐标和宽高值&#xff0c;这样Qt就知道这个组件的位置。当用户改变窗口的大小&#xff0c;组件还静静地呆在原来的位置&#xff0c;这有时候显然…

【APICloud系列|36】小米应用商店可以检测同个应用不同版本信息

在小米应用商店上架的信息 在其他应用商店上架的信息&#xff0c;比如应用宝 小米发过来的友好提示邮件&#xff1a;

【APICloud系列|35】小米应用商店版本更新

1.在小米应用商店后天重新上传一个更新加固已经签名的安装包。 链接地址&#xff1a;https://dev.mi.com 2.完善资料&#xff0c;只需要填写更新日志简单说明更新的缘由&#xff0c;再次选择相应的语言即可。原来的内容还是存在的。 3.提交审核就行。

Linux光盘检测,qpxtool

软件简介各位使用Linux系统的刻录发烧友有福了。不用再为了检测光碟品质而切换到Windows系统了。因为在Linux系统里也有支持光碟品质检测的软件&#xff01;它的名字是QPxTool。虽说05年底QPxTool就诞生了&#xff0c;但最近才被以rpm包的形式提供给Fedora用户。首先看下它的界…

存根类 测试代码 java_为旧版代码创建存根-测试技术6

存根类 测试代码 java任何阅读此博客的人都可能已经意识到&#xff0c;目前我正在开发一个项目&#xff0c;其中包含大量的旧代码&#xff0c;这些旧代码庞大&#xff0c;扩展且编写时从未进行过任何测试。 在使用此遗留代码时&#xff0c;有一个行为非常差的类非常普遍&#…

百度开发平台提交应用后进行官方认证审核失败?

昨晚收到一封来自百度的邮件 这里需要登录工业和信息化部查询后的ICP备案后的详细页面截图。&#xff08;其实也可以在备案的平台查询相关信息&#xff0c;我的是在阿里云备案的&#xff0c;所以直接去阿里云比较方便快捷&#xff09; 然后直接上传营业执照副本、ICP备案截图、…

linux字体如何删除不了,如何彻底替换Ubuntu下Chrome字体(清除楷体字)

刚刚升级到了Ubuntu 11.04,chrome也跟进到了11.0.696.57&#xff0c;让人纠结的依旧是Chrome内的字体&#xff0c;在首选项-->高级选项-->自定义字体并不能解决所有问题&#xff0c;还是有些网站看上去是令人纠结的楷体。在你的用户文件夹下(比如用户名为libai)选择显示所…

使用默认方法进行接口演化–第二部分:接口

引入了默认方法以启用接口演进。 如果向后兼容是不可替代的&#xff0c;则仅限于向接口添加新方法&#xff08;这是它们在JDK中的唯一用法&#xff09;。 但是&#xff0c;如果希望客户端更新其代码&#xff0c;则可以使用默认方法逐步演化接口而不会引起编译错误&#xff0c;从…

【APICloud系列|37】百度开放平台应用+,提升用户下载量操作步骤

进入百度应用开放平台后台&#xff0c;按图中步骤点击。 接入步骤 这个首先要准备和应用名称一致的百家号 链接地址&#xff1a; 进入官方号平台&#xff1a;http://gfh.baidu.com/ 填写官方的ID以及联系人的手机号即可&#xff0c;最后点击提交。

linux 命令 抛后台,Linux 后台执行命令

场景python 代码&#xff0c;打印1~3000&#xff0c;每秒打印一次## file_name: test.pyimport timei 0while 1:time.sleep(1)i i 1print(i)if i > 3000:break问题&#xff1a;直接在终端执行&#xff1a;python test.py, 需要在这个终端一直等&#xff0c;没法干别的事了…