了解 OpenJDK 以及为什么要使用OpenJDK?

OpenJDK 是 Java 的开发工具包,这门语言背后有 26 年的历史。从任何标准来看,它都不是一门新语言,尤其是在每隔几年就会出现新解决方案并且通常比其前辈更好的行业中。而最流行的 Java 实例 OpenJDK 已经 14 岁了。无论如何,OpenJDK 应该已经被替换过很多次了。然而,它仍然是世界上最流行的开发工具之一!这怎么可能发生?

在本文中,我们将尝试回答这个问题,深入探讨 OpenJDK 不断升级的过程,谈论开源的开发方式,并描述所有让 Java 如此独特的东西。

Java 和 OpenJDK 有何特别之处?

OpenJDK 是如何诞生的

Java 的历史始于 1991 年,当时 Sun Microsystems 的工程师对 C 和 C++ 编程语言的限制和 API 感到沮丧。该语言的原型最初被命名为“Oak”,后来更名为 Java。

它于 1994 年首次可供下载,并于 1995 年首次公开发布,并且几乎立即获得了当时流行的 Netscape 网络浏览器的支持。

2006 年,Sun 在 GNU 通用公共许可证下作为免费软件发布了 Java HotSpot 虚拟机和编译器,从那时起,OpenJDK 的历史开始于 Java 6 和 7 的开源。在 2006 年和 2008 年期间,越来越多的代码被打开。

目前,任何人都可以使用 OpenJDK 的代码,并且由位于 Oracle 周围的大型社区开发。OpenJDK有很多发行版,包括由 BellSoft 构建的 Liberica JDK,它也可以免费供任何人按照开源方式探索和使用。

OpenJDK 的工作原理和优势是什么

Java 诞生之初就形成了几个目标,包括:

Java 简单、面向对象且熟悉。

Java 是健壮和安全的。

Java 语言是体系结构中立的,而 JVM 是可移植的。

Java能够以高性能执行。

这些原则仍然是使 OpenJDK 流行的原因,因此探索它们并了解它们如何影响开发人员和最终用户的生活非常重要。

Java 是体系结构中立的,JVM 是可移植的

Java 代码是架构中立的,这意味着如果编写得当,它可以在任何设备上启动,从 PC 到现代微波炉。这可以通过利用 Java 一 JVM、Java 虚拟机、用于执行应用程序的运行时的最重要特性来实现。

通常,大多数编程语言将其代码编译为机器代码,这对于任何平台都是不同的。Java 编译器的工作方式不同,它创建特殊的“java 字节码”,可以由运行在任何系统上的 Java 虚拟机执行。

JVM 反过来使用动态编译器在应用程序执行期间编译代码。

这种方法允许在完全不同的平台上运行相同的代码,几乎不需要重写!没错,您可以编写一次程序,然后在任何地方执行它,只要您遵循指南。因此,如果您想使用现代微波炉的触摸屏来玩俄罗斯方块(或统治世界),Java 是最简单的语言!

但说真的,这种称为“一次编写,随处运行”的方法使您不必处理不同的架构、操作系统、驱动程序或硬件。您唯一需要做的就是将虚拟机用于所选平台。

Java 简单、面向对象且熟悉

如今,Java 语法不再是最简单的了……至少现在是这样,因为有许多新功能正在开发中,使代码更易于阅读和编写。然而,在它的构思之时,它比它的竞争对手更有条理。Java 语言规范是一组规则,可确保所有创新都遵循相同的逻辑并根据 Java 意识形态创建。

所有的 API 都是为了相互兼容和 Java 规范而创建的,因此它拥有您需要的一切,不仅可以有效地编写代码,还可以检查和利用其他人的工作。实现新技术的新编程方法,例如开关和 Vector API 的模式匹配,正在不断实现。

Java 强大且安全

作为一个开源项目,任何想要检查或增强其安全性的人都可以使用 OpenJDK 的代码。这意味着新发现的漏洞会不断通过每季度的 CPU 版本进行修补,对于 Liberica JDK 的情况,我们的支持已修复。

借助漏洞扫描程序等多种安全工具,您可以确保破坏您的应用程序和基础设施安全的尝试不会成功。

Java 是高性能的

有很多方法可以提升您的 OpenJDK 应用程序。JVM 内的编译器优化代码以获得最佳性能。如果启动时间更重要,您可以使用 GraalVM 原生映像技术,将应用程序与运行时一起打包成一个可执行的二进制文件。

OpenJDK 是如何开发的

OpenJDK 作为太空竞赛的基础

您可以将编程语言与发射宇宙飞船的太空港进行比较。当开发人员构建他们的应用程序“宇宙飞船”时,他们希望基础设施能够正常工作并使他们的生活更轻松。这意味着编程平台和运行时的每一个错误都会让他们陷入危险境地,当他们做对了一切,但启动失败,造成时间和金钱的浪费。

那么他们为什么选择 OpenJDK 呢?因为它是由可靠的大型社区管理的“太空港”。

让我们看看 OpenJDK 中的一切是如何工作的。

OpenJDK升级过程

OpenJDK的发展可以分为几个方向:

错误修复。

新功能的实现和过时功能的弃用。

主分支之外的项目。

让我们深入讨论它们。

错误修复

今天,当 GitHub 用于 OpenJDK 开发时,该过程大部分是自动化的,并且比以前快得多。为了报告新发现的错误,开发人员使用邮件列表来描述错误,然后给它一个编号。

当开发人员希望修复错误时,他们会在存储库中创建一个分支,这基本上是整个项目的副本。然后在这个分叉中,开发人员编辑代码的必要部分以修复错误。成功测试后,他们使用新代码向主分支发出拉取请求。

然后审查代码,如果满意,将其实施到 OpenJDK 的下一个版本的主分支中。该系统允许任何开发人员尝试修复任何发现的错误。

新功能的实现和过时功能的弃用

新功能通常通过几个步骤实现。

首先,它是由开发人员作为概念(草案)提出的。称为 OpenJDK 领导的管理委员会成员决定该功能是否值得开发。

批准后,草案被更新为必要的描述和基本实现的提议,成为JEP(JDK Enhancement Proposal)。它在完成之前经历了许多阶段。

实现过程本身类似于前面描述的错误修复,是通过 GitHub 上的 fork 分支完成的。由于新功能分阶段发布,此过程可能需要很长时间才能完成。预览版处理语义和语法,孵化器处理 API 更改。在该功能的最终实施发布之前,可能会有多达 3 个预览版或孵化器。这样做是为了让开发人员可以测试新功能并查看它与新代码和现有代码的配合情况,以免破坏已经工作的应用程序。通常,在 2 次预览或孵化器之后,新代码要么以最终形式添加到版本中,要么在被认为不安全或性能不佳时被删除。

总支外的项目

一些对 Java 功能影响很大的项目是在主分支之外开发的。如果成功,它们会彻底改变语言,但需要花费大量时间来完善。如果需要,它们仍然可以在当前状态下实现到 OpenJDK 中,并且一些开发人员通常会这样做。随着时间的推移,它们成为 JEP 和下一个版本的一部分。

规格变更

规范升级以 JSR 一 Java Specification Request 的形式提出和开发。这些要经过由指导 Java 技术发展的公司和人员组成的执行委员会的公开审查和投票。贝尔软件- 我们!- 与阿里巴巴、亚马逊、IBM、英特尔和甲骨文等公司一起,也是该委员会的成员。

发布节奏

OpenJDK 有 3 种或版本:

之前讨论过的季度 CPU 发布。它在构建时考虑了安全性,包括漏洞和错误修复。

技术版本 一带有新功能的编号版本,主要用于试用它们。对于开发人员来说,测试新技术、让他们的应用程序为弃用旧技术做好准备以及规划他们未来的工作是很有用的。

LTS(长期支持)编号版本。这些都是经过测试的实现,将在最长时间内得到供应商的支持。它们旨在成为在企业环境中开发和运行程序的基础。

在 2017 年 Java 9 发布之前,可能需要将近 5 年的时间才能发布一个新的编号版本。从那时起,Oracle 切换到新的发布节奏,每年发布两个编号版本,每两年发布一个新的 LTS 版本。Java 17 是最新的 LTS 版本,下一个将是 2023 年 9 月的 Java 21,之后每两年发布一次。

支持本身由包括 BellSoft 在内的许多供应商提供,新版本的 Liberica JDK 与其他主要发行版同时发布。

为什么开源优于闭源

重要的是要记住 OpenJDK 是一个开源项目。这很重要,因为所有封闭源代码的替代品本质上都是黑匣子。理论上它们会更安全吗?是的。但是,从理论上讲,它们可能包含大量没人知道的漏洞……或者除了已经使用这些漏洞与开发人员窃取资金或信息的数据窃贼之外没有人知道。

在开源中,这是不可能的。你总是知道什么有效,什么无效,以及为什么。当然,恶意行为者可以研究代码,但大量开发人员和安全管理人员也可以!所有漏洞都很快被发现并修复。所有加密算法和安全措施都可用于测试。

还有一件事——如果你认为你可以做的比已经做的更好——你可以继续去做!

这将我们引向下一个问题。

为什么有这么多 OpenJDK 供应商和实现?

除了原始的 OpenJDK 之外,还有很多供应商出售或免费提供自己的构建版本,包括制造 Liberica JDK 的 BellSoft。为什么有这么多可供选择,有什么区别?

答案很简单——功能、安全和支持。所有 Java 开发工具包,包括 Oracle Java SE,都基于 OpenJDK。它们都可以按照预期的方式运行 Java 代码,并且在一切正常时它们是相似的。当出现问题时,差异就会出现。

如果您在企业中使用 OpenJDK,并且遇到问题,您需要专家来处理它。您要么必须让自己的团队致力于维护 OpenJDK 的稳定性(成本高昂且并非总是必要的),要么联系可以提供帮助的人。对于 OpenJDK,您需要通过前面描述的所有渠道来修复错误或获得答案并排队等候。

现在,供应商在那里帮助他们的客户。他们中的一些人高效而快速地做到这一点,有些人要求你先与经理和律师交谈,花时间让你赔钱。OpenJDK 构建(如 Liberica JDK)的其他优点是额外的安全增强和功能,使您的应用程序更加安全。

结论

OpenJDK 是一个了不起的应用程序开发平台,它只会随着年龄的增长而变得更好!

我们邀请您加入每天使用 Java 的大型开发人员社区。我们每个人都在努力让它变得更好,这是 Java 将在多年后继续存在的最好保证。

本文链接:https://www.dzdvip.com/34128.html 版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年6月24日 00:41
下一篇 2022年6月24日 01:09

相关推荐

  • 2022年全面停止催收是真的吗(2022年全面停止催收网贷)

    金融机构通过短信电话等方式提醒借款人还款,本来是无可厚非的做法。然而却有一些不法分子看到了“生财之路”,向一些借款人提供所谓的“反催收”服务。近日,央视财经频道的一期节目曝光了“反催收”组织通过精心包装逃避金融机构审核,最终给借款人造成了巨大损失的做法,引起了社会极大的关注。 “反催收”服务陷阱多 近两年,受到疫情的影响,不少借款人的收入锐减,出现了还款逾期等现象,严重的甚至影响到了个人征信记录。于是国内金融市场上出现了反催收、代理投诉等黑色产业链。监管部门在调查非法代理投诉乱象时也发现,代理维权组织与消费者签订服务协议,收取定金,并诱导消费者提供身份证、保单信息、银行卡等个人隐私信息,然后集中向监管部门或信访部门重复恶意投诉举报,乘机牟取高额代理手续费。 根据2022年的一次出借者通过法院渠道败诉中,清楚地了解到了借贷者和出借者的关系更为密切,当然这也是针对于查到网贷违规的一种方式,所以说2022年,借贷者“春天”已到,出借者迎来上岸?而2022年的这一举动将会影响到上百万人。   不管是从监管人员的口中,还是从兑现的方案上来看,出借者的回款是跟随着借贷者还款的,而借贷者也是在积极的还款,自2020年开始不少借贷者面临着催收表示协商还款,而这种协商还款,是借贷者想要直接还本金,但是网贷平台的催收人员表示拒绝。   并且催收人员伪造各种信息,曝光通讯录等方式目的就是让借贷者还款,然而我们在北京房山的一个平台出借者败诉得到的理由是,出借者和借贷者有债务关系,出借者是可以要求平台配合找到借贷者,而借贷者也能够直接还出借者的方案,而这正如出借者的想法是只要还本金就可以,同样借贷者也是这样的想法。   所以现在不少出借者已开始采取行动,要求平台出示借贷者的信息,与借贷者进行沟通还款,这对于任何借贷者来说是好事,主要体现两个方面,一、借贷者可以正规的还款,再也不用遭到网贷的催收,而且还不上款也可以进行分期,远离了网贷平台的债务关系,直接对接出借人,二、借贷者可以在监管的下的还款不会影响到信用记录,这是重要的。   当然出借者想要上岸也并不是那么容易,众所周知,有大量的借贷者在平台运营期间都已还款,而且是高息,甚至有些人以平台放高利贷为由而拒绝还款,也或者是已经还清楚本金的和政策上规定的利息,那就需要出借者走法律程序起诉网贷的高管,而且是多个高管。   现在不少出借者已开始采取…

    2022年4月16日
    74
  • 抖音直播带货玩法(抖音带货教程新手入门)

    毋庸置疑,抖音在未来3-5年仍然有非常多的机会,但关于在于你选择怎样一个赛道,以一个更加低成本、轻运作的模式挤掉竞争对手,本质上也可以理解为,你的货品赛道是什么? 我认为这是一步走错,全盘皆输的一步棋,因为在整个直播链条当中,不管是账号、人设、话术、玩法、付费,全部都是基于货的基础上打造。 本手册分两部分: 第一部分,聊算法,剖析抖音直播带货的底层逻辑; 第二部分:看要素,细说直播带货的六要素:即人、货、场、号、店、流量。 一、算法 关于抖音的崛起,我们可以找出很多关键词,“算法”就是其中最为重要的一个。 从内涵段子到今日头条再到抖音,字节跳动这个“爆款APP工厂”光速发展的核心竞争力,就是算法。 前阵子,川建国一番骚操作,传闻微软要花数百亿美金买下Tiktok(抖音海外版),冲的也是字节的算法。 什么是算法? 简单来说,就是平台的底层逻辑和游戏规则。 什么是抖音的算法? 抖音的算法有两种: 1.抖音系统算法: 抖音短视频、电商直播的算法逻辑。 2.抖音平台“算法”: 抖音这个公司,是怎么算账的,有什么诉求。 — 1 — 系统算法 什么是抖音的系统算法? 我们在抖音上发一个视频或是开一场直播,系统会按怎样的规则来推送这个视频/直播? 这个规则就是系统推荐算法。 首先,让我们明确一件事: 抖音的算法,短视频与直播是不同的。 严谨点来说: 短视频的流量池,和直播的流量池,是相对独立的。 所以,我们能看到很多几百万粉丝的短视频达人,直播间只有几个人在线; 反之,很多搞直播带货的号,粉丝不过几万人,直播间竟然也有好几万人在线,一场还能卖几百万。 例如下面这个号,1.3万粉丝,一场直播却能卖100万+。     其次,让我们进一步拆解,算法可粗略分为: 兴趣标签体系+阶梯流量池体系 兴趣标签体系,指的是抖音会通过大数据记录与分析,给我们每个人每个帐号,打上N个标签。 这些标签,大致又可以分为三类: 1.基础标签:你的年龄、性别、城市、手机品牌… 2.兴趣标签:你喜欢哪哪一类的内容?汽车、段子还是小姐姐跳舞? 3.交易标签:你在抖音上会买什么样的产品?价格多少?     抖音广告后台的部分标签 当我们使用抖音时,就会刷到和我们兴趣标签想匹配的内容,即短视频+直播。 所以,打开一个人的抖音,往往就能大致判断平时他在看什么内容,有什么兴趣爱好。 记得有一次,…

    2021年10月22日
    67
  • 土坑酸菜涉事公司董事长道歉

    据央视财经消息,在3·15晚会曝光了湖南华容县插旗菜业收购土坑酸菜加工所谓的老坛酸菜包后,3月16日中午,记者再一次来到华容县插旗菜业有限公司。此时酸菜车间已经完全封闭,湖南插旗菜业有限公司董事长严钦武向消费者致歉:“我错了,深感惭愧,向广大消费者道歉。在今后接受检查,整改到位。” 值得一提的是,“土坑”酸菜曝光后,华容县委县政府当晚立即组织对央视曝光企业采取查封措施,开展执法调查,同时对全县酱腌菜企业开展大排查大整顿。当晚21时,华容县领导带队,县市场监督管理局、公安局出动执法人员,到达华容县插旗菜业和锦瑞食品有限公司,认真排查整治,责令停产整顿,封存全部产品,启动立案调查。 随后连夜召集县内30余家酱腌菜企业负责人召开整治大会,通报情况,要求所有企业开展自查自纠,立行立改;宣布从即日起,对全县酱腌菜行业开展地毯式排查,对查出的问题顶格处理,绝不姑息;同时进一步加强市场监管、群众监督、舆论监督的作用,规范企业生产经营活动,促进行业自律,提升产品质量,确保酱腌菜行业安全、规范、健康、有序发展。 对此,康师傅官网3月15日深夜信息显示,针对“3·15”晚会曝光的湖南插旗菜业“土坑酸菜”食品安全问题,康师傅方便面投资(中国)有限公司发布声明称:湖南插旗菜业有限公司是我司酸菜供应商之一,已立即中止其供应商资格,取消一切合作,封存其酸菜包产品,积极配合监管部门调查和检测。同时声明称,此次事件辜负了消费者信任,深表歉意并将引以为戒! 3月16日午间,统一再次在官网发布声明表示与“土坑酸菜”无关,该公司酸菜包所用原料菜,一贯坚持在酸菜包工厂内自腌自用,统一公司全程派员监管,不使用央视“3.15”晚会报道的“土坑酸菜”。 这份声明称,经对湖南锦瑞食品有限公司连夜调查,统一企业酸菜包用原料菜确认全部来源于厂内自腌自用,未使用央视“3.15”晚会报道的“土坑酸菜”。 在统一发布的声明上,还附有湖南锦瑞食品有限公司的一份承诺函:“央视晚会报道的“土坑”酸菜系某食品公司租用锦瑞公司场地周转使用,与锦瑞公司生产给统一企业的酸菜包产品,不存在任何原料共用以及晨跑业务往来。”针对上述承诺,锦瑞公司表示愿意承担一切法律责任。 此前,统一在3月15日的深夜声明中表示,央视“3.15”晚会报道中提及的湖南插旗菜业有限公司、岳阳市雅园酱菜食品厂及坛坛俏食品有限公司均非统一公司供应商,统一供应商只涉及湖…

    2022年3月16日
    22
  • 苹果A15处理器跑分曝光:GPU性能比A14提升44%

    苹果A14处理器的性能已经让安卓难以望其项背,而即将搭载于iPhone 13系列的A15,将继续扩大优势。 有爆料人透露,今年7月份的样机测试中,A15处理器在GFXBench Manhattan 3.1场景中,跑出了198FPS的成绩。稍稍有些遗憾的是,第二次测试时GPU降频,导致成绩下滑到了140~150FPS。 经查快科技手机SoC榜单,苹果A14是GFXBenc曼哈顿3.1场景目前全球最高分,为137FPS,也就是A15的GPU性能最高提升了44%。当然,老外称A14其实能跑到170.7FPS,这样话增幅是16%。 安卓SoC方面,麒麟9000成绩119最高,其次是骁龙888 Plus的118FPS,A15对比之下的增幅分别是66%和67%。 同样是曼哈顿3.1,A14对比A13的性能增幅是35%。 当然,曼哈顿3.1只是衡量GPU的一种手段,根据苹果官方数据,整体来看,A14相较于A13,CPU性能增幅大概16%,GPU性能增幅则仅有8.3%。 据称,A15仍旧是一颗6核CPU处理器,工艺升级到台积电N5P,也就是5nm增强版。

    2021年9月7日
    30
  • 小红书改版的产品逻辑分析和营销预测

    小红书的改版让许多内容营销人都开始关注与应对。那么小红书做出了哪些改版以及后续小红书做出这些改版的动机如何,改版之后内容创作者该如何应对?作者对这几个方面进行了分析,希望对你有所启发。 我上一篇《营销的逻辑》刚聊完,11月初就发现小红书发布了苹果新版本,主要的改版逻辑竟然和我那篇文章聊的主要观点不谋而合,感到这缘分真妙。并且这次改版也是颠覆性的,影响挺大。 于是决定写一篇文章研究下本次改版背后的产品逻辑,及对营销所带来的影响。然而等我列了提纲,研究通各个要点后,准备开工时,却发现小红书面对用户的大量吐槽,已经回撤了版本。已经更新的用户也会自动退回到之前的版本。之后会不会按类似的方向重新发新版本,还是放弃这个改版方向,未可知。 最终我决定还是研究下这次改版,就当做和大家一起做下思考题吧。 一、改版对比 第一,三个一级流量入口(发现、关注、同城)调整为一个。关注页取消,改为首页顶部经常浏览的博主模块,同城页调整到频道(二级入口)。 第二,底部消息栏拆分。原来是消息栏里包含了私信,群消息入口,语音房间入口,新增关注通知,赞和收藏通知,评论和@通知。更改后分成两个入口。 入口1:私信和群消息的通知移到首页的左上角,替换了原来发布瞬间的按钮。 入口2:原消息栏变为通知栏,展示赞、藏、评、@、关注、官方通知等内容。 第三,取消了首页通知的数字提示,改为红点代替。 思考题: 为什么小红书要将三个一级流量入口调整为一个? 为什么要将底部消息栏拆分出私信部分到左上角? 为什么将通知的数字提示改为红点提示? 二、从产品经理的角度分析三大改动的动机 1. 为什么将三个一级流量入口调整为一个? 我在上一篇文章《营销的逻辑:简化》中已经分析过,通过将多个同级菜单缩减,可以让流量更加集中到一个菜单,并且可能会让总流量增加。 这一套动作的结果是,流量更加聚集到推荐页。同城页的流量更少,来自粉丝关注的流量更少。流量聚集到推荐页,那么小红书就能在推荐页安排更多的广告流量,从而增加营收。 博主的粉丝流量减少了,他们的因为粉丝带来的流量价值也就降低了,品牌主本来投放给博主的钱,就该更多地投放给小红书平台。这样也有利于小红书平台增加营收。 本来小红书向博主收过路费的方式是让博主走品牌报备,但是并不是每个博主都会走报备路线,特别是粉丝量少的博主死猪不怕开水烫,就偏偏不走报备,以及,很多商业性质的笔记的商业边…

    2021年11月14日
    38
  • 2021年618手机销量排名

    今年的618购物节已经提前启动几天了,销量位于前五名的手机品牌有苹果12、位于手机销售排行榜第2名的是Redmi K40、第3名是真我Q3、第4名是redmi note10 pro、第五名是redmi 9A。 在某东平台,iPhone 12 Pro Max月销量11万,iPhone 12 Pro月销量12万,iPhone 12 mini接近13万,而iPhone 12接近140万,真的属于2、8法则,其中,三款机型占20%份额,iPhone 12占80%。 Redmi K40,这款手机发布至今一机难求,也是一款有口皆碑的5G千元机,配备到了骁龙870处理器,还有红外遥控 、支持NFC、线性马达、双扬声器、33w快充和三星E4材质屏幕,论性能和画质表现方面,它都是行业第一梯度水平,定价1999元销量排名第二,并且还是在缺货抢购情况下达成的。 Realme真我 Q3,首发价格1299元,618期间购买只需1199元。Realme真我 Q3采用6.5英寸LCD屏幕,支持120Hz刷新率和侧边指纹识别、180Hz触控采样率,搭载骁龙750G处理器,前置1600万像素单摄,后置4800万像素主摄 800万像素超广角 200万像素微距的三摄,内置5000mAh大电池,支持30W快充。 Redmi Note10 Pro采用6.6英寸LCD屏幕,支持120Hz刷新率。搭载天玑1100处理器,提供6/8 128/256GB的存储组合,前置1600万像素单摄,后置6400万像素主摄 800万像素超广角 200万像素微距三摄,内置5000mAh电池,支持67W快充。 第五名:Redmi 9A 第六名:Realme GT Neo 第七名:小米11 第八名:小米10S 第九名:iQOO Z3 第十名:Redmi Note9。 截止6月6日,单机累计销量前二十名的手机中小米占了8部,但最受欢迎卖得最好的手机却不是小米,而是苹果。

    2021年6月7日
    53