计划B? 那是计划N…没什么。 拼图于2015年问世

真是一天 当典型的欧洲人逐渐破产时,美国的人们开始喝咖啡。 这就是为什么我在Mark Reinhold最近的新闻中睡个好觉的原因。 他在题为“ Project Jigsaw:火车晚点 ”的帖子中建议将Project Jigsaw推迟到下一个版本Java 9。 在最近的会议和博客文章上,模块化工作已成为Java未来的关键主题之一,这是一个相当令人惊讶的举动。 昨天,每个人都在猜测是否会有针对Jigsaw的JSR。 今天我们知道为什么没有发生。 我对此感到失望。 这就是为什么。

提前通知? 不-是萨拉米香肠切片! 要么?

我的第一印象是:嘿,你们不明白。 在时间表中延迟删除功能对社区不利。 但是唐纳德让我意识到Java 8计划于2013年5月发布。

@ myfear @ jponge @ alexismp再次,我真的很抱歉提前18个月的建议对您还不够。
— DonaldOJDK(@DonaldOJDK) 2012年7月17日

这基本上意味着,我们将在18个月后得到通知。 但是你猜对了。 我失望的原因不是时间。 这是关于Java的未来已被交流并用于营销的方式。 伯特·埃特曼(Bert Ertmann)用他的推文为我钉上了它:


计划B承诺在'12年秋季开始。 然后成为'13秋季,现在它的主要特征之一成为'15秋季。 男孩,真是一团糟! #拼图
—伯特·埃特曼(@BertErtman) 2012年7月17日

这似乎是一种模式。 切片一切,直到没有相关的东西。 可是等等。 我们都没有看到拯救港滑梯吗? 我们是否一直忽略它们? 还是我们不知道它们的真正重要性? 难道这不是一个敏捷的计划过程,只是没有以正确的方式进行沟通吗? 社区作为最重要的利益相关者(除了Oracle内部利益)显然没有意识到声明和计划的真实可靠性。 我以前见过。 并用同样的方法挣扎。 概述计划的更多内容,甚至为进度添加进度表,对于深入了解开发实际发生的情况将是非常有用的工具。 不,我不打算看到所有小数字,但我希望有一个指标来指示正在按计划进行的工作和正在……被推迟的工作。

我不想错过对Donald和Mark以及Dalibor以及来自OpenJDK / Oracle团队的许多其他人倾听社区的感谢的机会。 我很高兴在Twitter,电子邮件,博客,论坛以及周围的任何地方看到他们,以收集反馈并尝试以Oracle交流建议和决策的方式进行工作。

真正原因是什么?

除了Mark在博客中表达的理由之外,还有其他原因吗? “仍然存在一些重大的技术挑战”,并且“没有足够的时间来进行广泛的评估,审查和反馈,而平台需要如此深刻的改变。” 跟随Mark的twitter流也可以在此处揭示更多见解。 “从Sun的一小部分开始,到与Oracle的整合几乎没有幸存,大约一年前才配备了完整的人员……”( @mreinhold )对于外部人员来说,消息听起来像……哇,这些东西是几年前开始的,实际上没有人在那里编码? 有了Mark的见解,我希望他能再写一篇关于这件事的博客文章确实听起来有些不同。 事实可能是这里要简单得多。 知道社区可以做些什么也将是一件好事。 马克:继续! 继续取消以前的秘密部分,并尝试促进社区所提供的内容!

iOS上的Java梦想结束了吗?

您还记得上次JavaOne所说的话吗? iOS和Android版本的JavaFX? 既然Java ME从未真正崛起过,移动女神又回来了Java? 太棒了 做到这一点的最突出的要求之一就是能够将JDK重新打包到合适的大小以完成工作。 拼图是其背后的想法。 从今天起,Mark建议在Java SE 8规范中引入“一个或多个紧凑的Profiles” http://mail.openjdk.java.net/pipermail/java-se-8-spec-observers/2012-July/000001.html解决缺少的模块系统。 实际上,这将不是一个“模块”系统,而仅仅是“构建JDK的不同方式,从而导致JRE的大小不同”。 ( @mreinhold )。 是的 好。 问到可能有答案的含义是:“我们已经在为构建和测试模块化平台的复杂性做准备。” ( @mreinhold )似乎该提案的构建基块已就绪,并且不需要额外的开销就可以在路上获得移动承诺。
因此,我们不必担心基于JavaFX的应用程序的下载量会超过100 MB。 我不知道它们是否会满足建议的10 MB开始的分发大小。 但无论如何,我希望它的大小合理。

我们不需要拼图!?

真? 我们已经有了OSGI,JBoss模块,HK2内核抽象。 有很多东西可用,而Jigsaw只会帮助JDK。 真? 我从稍微不同的角度看它。 即使模块系统最初确实对JDK有所帮助,但依赖的平台规范(例如Java EE)也非常需要模块系统。 Java根本没有任何内容可做。 JCP至少没有任何东西。 因此,从今天开始寻找模块化方法将意味着接受非JCP技术。 我们都知道这不会发生。 因此,在Java EE 7及更高版本中,我们非常确定此建议会对内部讨论施加很大压力。 不要忘记竞争对手在进入和决定该领域所获得的额外年限。 如果您问我,最糟糕的事情是Jigsaw最终只能在内部使用JDK。 完全有可能发生这种情况。

Java 8还剩下什么?

随着Jigsaw被剥夺了Java 8时间框架,这里最重要的问题是关于剩下的东西。 甚至仍然在保存港声明下基本上是:
– Lambda项目(JSR 335)将关闭Java编程语言。
–新的日期/时间API(JSR 310) –类型注释(JSR 308) –几个较小的功能

Mark表示,随着新的作用域Java 8将于2013年9月左右准时交付。

现在感觉好些了吗?

我不知道。 即使睡个好觉也没有带回我几天前谈论Java模块化的那种舒适感。 但是我想我必须克服它,而这仍然是那些没有毛骨悚然的真正日子的日子。 似乎我个人必须考虑其他方法。 一直等到2015年。 OSGI,JBoss模块……我来了。

更新20.07.12

亚历克西斯提出了关于动机和拼图背后真正崩溃的有趣观点:

“正如我在上文中所写,Oracle具有宣布Jigsaw战略目标的资源。 我可以同意,到2013年年底可能很难交付,但是等待2016年实际上是在消灭拼图游戏,并鼓励所有人寻找替代品,这将危及拼图游戏日新月异的机会。 实际上,即使Oracle也在考虑使用Java 8中的配置文件,如果您问我的话,这也是一个丑陋的创可贴。 您需要痛苦地拆掉它,以在平台中获得适当的模块化。 Jigsaw确实不应该被视为“一项新功能”,对我来说,这确实是一些人长期以来一直在呼吁的Java重新启动。 只有兼容的。”

参考: 计划B? 那是计划N…没什么。 2015年 , Jigsaw来自我们的JCG合作伙伴 Markus Eisele,他在Enterprise Software Development with Java博客上发表文章。


翻译自: https://www.javacodegeeks.com/2012/07/plan-b-that-is-plan-n-nothing-jigsaw.html

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

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

相关文章

C# 访问MongoDB 通用方法类

using MongoDB.Driver; using System; namespace MongoDBDemo { public class MongoDb { public MongoDb(string host,string timeOut) { this.CONNECT_TIME_OUT timeOut; this.MONGO_CONN_HOST host; } /// <summary> /// 数据库所在主机 /// </sum…

html网页背景图片平铺代码,jQuery图片平铺效果制作网页背景图片平铺代码

插件描述&#xff1a;jQuery图片平铺效果制作网页背景图片平铺代码调用JS文件调用插件方法$(function(){// 插件初始化$(img).jqthumb({classname : jqthumb, // 类名. 默认是 jqthumbwidth : 100%, // 新的图像裁剪后宽度. 默认是 100px.height : 100%, // 新的图像裁剪后高度…

使用保险丝结构管理MQ和ESB的大型部署,第I部分

FuseSource最近发布了ActiveMQ和ServiceMix发行版的企业版。 其中一些重要功能包括增量修补 &#xff0c; 自定义平台安装程序和第三方验证 。 新企业版附带的最酷的功能之一是Fuse Fabric和一些新工具 &#xff0c;使您可以利用Fabric管理环境。 Fabric允许您通过一些命令行或…

Mybatis参数传递及返回类型

mybatis参数传递&#xff1a; 单个参数&#xff1a;不做特殊处理 #{参数名}&#xff1a;取出参数值 多个参数&#xff1a;做特殊处理 多个参数会被封装成一个map key&#xff1a;param1 ... paramN value&#xff1a;传入的参数…

网络html代码是什么问题,html代码问题

html代码问题來源:互聯網 2010-03-22 10:35:57 評論分類: 電腦/網絡 >> 程序設計 >> 其他編程語言問題描述:这三种链接格式我都试了&#xff0c;都不行&#xff0c;请高手指点下。。。。。注意&#xff1a;我要的是代码&#xff0c;不是操作方法&#xff0c;因为…

spring mvc 文件上传

spring mvc 文件上传 一、单文件上传 配置步骤&#xff1a; 步骤一、在配置文件中配置包扫描器&#xff08;暂且这样配&#xff0c;会出问题&#xff0c;我们下面说解决方案&#xff09; <?xml version"1.0" encoding"UTF-8"?> <beans xmlns…

使用工厂模式解决设计问题

工厂设计模式是面向对象环境中最常用的模式之一。 再次来自“创意设计”模式类别&#xff0c;即有关对象创建的所有信息。 在某些情况下&#xff0c;对象的创建很复杂&#xff0c;可能需要某种程度的抽象&#xff0c;以便客户端代码无法意识到这些复杂性和内部实现细节。 在某些…

103. Binary Tree Zigzag Level Order Traversal

二刷。 BFS&#xff0c;基本习惯上用Iterative的做法来做&#xff0c;就是QUEUE。 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val x; }* }*/ public class Solution…

java多线程系列13 设计模式 Future 模式

Future 模式 类似于ajax请求 页面异步的进行后台请求 用户无需等待请求的结果 就可以继续浏览或者操作 核心就是&#xff1a;去除了主函数的等待时间&#xff0c;并使得原本需要等待的时间段可以用于处理其他业务逻辑 JDK内置实现Future模式演示一下 public class RealData im…

lodop转到其他html页面,Lodop实现打印功能

思路&#xff1a;1、在 html 页面引入 LodopFuncs.js 文件&#xff0c;并用 object 标签和 embed 标签获取 lodop 对象2、在 js 中获取 html 页面中的 object 和 embed 对象&#xff0c;并使用getLodop() 方法得到 lodop 对象3、实现打印功能&#xff0c;以下三步是必需的初始化…

完整的Web应用程序Tomcat JSF Primefaces JPA Hibernate –第3部分

Primefaces AutoComplete&#xff0c;JSF转换器 这篇文章从第一部分和第二部分继续。 JSF拥有Converter工具&#xff0c;可以帮助我们从用户视图中获取一些数据并将其转换为从数据库或缓存中加载的对象。 在“ com.converter”包中&#xff0c;创建以下类&#xff1a; packa…

html5首屏加载乐山暴雨,发布前端项目时因chunk-vendors过大导致首屏加载太慢,Vue Build时chunk-vendors的优化方案...

这个优化是两方面的&#xff0c;前端将文件打包成.gz文件&#xff0c;然后通过nginx的配置&#xff0c;让浏览器直接解析.gz文件。1、compression-webpack-plugin插件打包.gz文件安装插件npm install --save-dev compression-webpack-plugin或者yarn add compression-webpack-p…

width:100vh与min-height:calc(100vh + 51px)

vh:相对于视窗的高度&#xff0c;那么vw:则是相对于视窗的高度。 “视区”所指为浏览器内部的可视区域大小&#xff0c;即window.innerWidth/window.innerHeight大小&#xff0c;不包含任务栏标题栏以及底部工具栏的浏览器区域大小。 详细vh的用法&#xff0c;大家可以参考http…

XML配置文件中的Spring配置文件

我的上一个博客非常简单&#xff0c;因为它涵盖了我从Spring 3.0.x到Spring 3.1.x的轻松升级&#xff0c;最后我提到可以将Spring模式升级到3.1&#xff0c;以利用Spring的最新功能。 在今天的博客中&#xff0c;我将介绍这些功能中最酷的功能之一&#xff1a;Spring配置文件。…

交大计算机专业怎样,计算机专业高校实力排名,上海交大第五,清华第二,第一毫无争议...

原标题&#xff1a;计算机专业高校实力排名&#xff0c;上海交大第五&#xff0c;清华第二&#xff0c;第一毫无争议计算机专业在近几年可谓是“大热”&#xff0c;众多考生抢破头也想当码农&#xff0c;背后的原因其实不难理解。互联网时代的到来&#xff0c;计算机早已渗透到…

python_day7 绑定方法与非绑定方法

在类中定义函数如果 不加装饰器 则默认 为对象作为绑定方法 如果增加 classmethod 是 以 类 作为绑定方法 增加 classmethod 是 非绑定方法&#xff0c;就是不将函数 绑定 ##################### class Foo: def func(self): print(self) classmethod def func…

Spring Security使用Hibernate实现自定义UserDetails

大多数时候&#xff0c;我们将需要在Web应用程序中配置自己的安全访问角色。 这在Spring Security中很容易实现。 在本文中&#xff0c;我们将看到最简单的方法。 首先&#xff0c;我们将在数据库中需要以下表格&#xff1a; CREATE TABLE IF NOT EXISTS mydb.security_role (…

python之路-面向对象

编程范式 编程是 程序 员 用特定的语法数据结构算法组成的代码来告诉计算机如何执行任务的过程 &#xff0c; 一个程序是程序员为了得到一个任务结果而编写的一组指令的集合&#xff0c;正所谓条条大路通罗马&#xff0c;实现一个任务的方式有很多种不同的方式&#xff0c; 对这…

西安邮电大学计算机科学与技术有专硕吗,2020年西安邮电大学计算机学院考研拟录取名单及排名!...

20考研复试调剂群&#xff1a;4197552812020年西安邮电大学计算机学院硕士研究生招生复试成绩及综合排名各位考生&#xff1a;现将我院2020年硕士研究生招生复试成绩及综合排名公布(最终录取名单及新生学籍注册均以“全国硕士研究生招生信息公开平台”备案信息为准)&#xff0c…

用Java排序的五种有用方法

Java排序快速概述&#xff1a; 正常的列表&#xff1a; private static List VEGETABLES Arrays.asList("apple", "cocumbers", "blackberry");Collections.sort(VEGETABLES);output: apple, blackberry, cocumbers反向排序&#xff1a; pri…