Kayıtlar

Java 15初具规模

Resim
随着Java 14上周正式上市,继任者Java 15的开发工作已于2020年9月开始。到目前为止,已针对Java 15提出了两个正式更改,即添加文本块和删除Nashorn JavaScript引擎。发布。 虽然尚未在Java Development Kit 15的OpenJDK官方页面上引用,但提案的自己的OpenJDK页面以JDK 15为目标发行版。 Nashorn删除在JDK 15官方页面上引用。 这两个OpenJDK 15建议的细节: 在JDK 14和JDK 13中都预览过的文本块旨在通过简化表示跨几行源代码的字符串的表达,同时避免在常见情况下的转义序列,从而简化了编写Java程序的任务。文本块是一种多行字符串文字,它避免了大多数转义序列的需要,以可预测的方式自动设置字符串的格式,并在需要时为开发人员提供了对格式的控制。 文本块建议的目标是增强Java程序中表示用非Java语言编写的代码的字符串的可读性。另一个目标是通过规定任何新构造都可以表示与字符串文字相同的字符串集,解释相同的转义序列并以与字符串文字相同的方式进行操作来支持从字符串文字的迁移。 OpenJDK开发人员希望添加转义序列来管理显式空白和换行控件。 Nashorn于2014年3月在JDK 8中首次亮相,此后被诸如GraalVM之类的技术淘汰了。 OpenJDK 15提案要求删除Nashorn API和用于调用Nashorn的jjs命令行工具。 可以在java。 jdk.net上找到JDK 15的早期访问版本。根据Oracle六个月的发布节奏,JDK 15将是一个短期功能版本,将被支持六个月。 下一个长期支持(LTS)版本将获得几年的支持,它将是JDK 17。 ,该版本将于2021年9月到达。当前的LTS版本是JDK 11,该版本于2018年9月发布。 版权所有©2020 IDG Communications,Inc. 紧贴InfoWorld的新闻通讯,以了解软件开发人员,分析师,数据库程序员和数据科学家的情况。 从我们仅限会员的内幕文章中获取专家见解。.

GitOps将Git的力量带入Ops

Resim
到目前为止,您可能已经听说过GitOps,如果这样,您可能仍想知道它的含义。如果我告诉您GitOps不一定涉及Git(真的,不是),它也不需要,也不需要Kubernetes(与之定期配对的编排引擎)。 感到困惑?好吧,尝试一下:GitOps是一种以开发人员为中心的体验来管理应用程序的方法,正如创造了“ GitOps”一词的公司Weaveworks可能会说。更好地控制他们的工作。可以将其视为类固醇上的DevOps或自然得出结论的DevOps。 这个结论?使开发人员能够在其应用程序的操作中扮演更大的角色,同时也使操作人员的生活大大改善。 Linus Torvalds可能是最著名的Linux创建者,但是Git(他的发明的分布式版本控制系统)可以说是更为重要。托瓦尔兹曾说过:“ Git证明了我不仅可以成为一个不可思议的奇迹,”但这在极端情况下还是轻描淡写了。虽然Git之前有版本控制系统(例如Subversion),但自2005年推出以来,Git改变了开发人员构建软件的方式。 根据分析师Lawrence Hecht进行的研究,如今Git已成为软件开发的“近乎通用”的组成部分。 如何“近乎通用”?好吧,Stack Overflow调查显示它在2018年的使用率为87%,而JetBrains的数据将其采用率从79%(2017)跃升至90%(2019)。由于有这么多代码位于公共Git存储库和(甚至更多)私人Git存储库中,因此我们处于将Git打包操作的绝佳位置。 引用Weaveworks首席执行官Alexis Richardson的话说:“ Git是强大的选择,[并且]如果可能的话,我们总是会推荐它,但是说GitOps需要Git方面的专业知识是错误的。 使用Git作为UI并非如此需要。 Git是真理的来源,而不是UI。”例如,银行在Subversion或Mercurial中有旧的存储库。 它们可以用这些存储库进行GitOps吗?是。实际上,GitOps的某些元素早在2000年代就开始出现。 但是对于大多数公司而言,在很多时候,对Git的依赖使GitOps在DevOps上取得了如此引人入胜的进步,并带来了巨大的近期机遇。 哦,还有Kubernetes。为什么选择Kubernetes?尽管可以使用不同的容器编排引擎,但Kubernetes是行业默认设置。根据Weave...

O’Reilly亲自参加了现场活动

Resim
在COVID-19病毒大流行之后,著名的技术会议生产商O’Reilly永久关闭了其活动业务。从现在开始,O’Reilly活动将在线举行。 O'Reilly在3月24日的公告中指出了OSCON(O'Reilly开源软件会议)和Strata Data&AI会议等事件的产生者。该病毒对其现场事件部门的影响。作为回应,该公司最近将原定于上周在圣何塞举行的Strata会议改为在线形式,吸引了4,600多名远程与会者。 O’Reilly总裁Laurie Baldwin说:“如果不了解这场全球卫生紧急情况何时结束,我们将无法为因这场危机而永远改变的业务计划或开展业务。” “随着大型技术供应商将其活动完全在线进行,我们相信当面对面活动时,新的常态将为这一阶段做好准备。 ” 鲍德温指出,大型技术供应商也已将活动转移到网上。微软例如将其最初计划于5月在西雅图举行的Microsoft Build 2020开发者大会转变为全数字化。 与现场活动相关的O’Reilly员工已被释放。 除了活动业务之外,O’Reilly还拥有技术发布业务,并提供交互式编码活动和自定义培训。 版权所有©2020 IDG Communications,Inc. 紧贴InfoWorld的最新新闻稿,内容涉及软件开发人员,分析师,数据库程序员和数据科学家。 从我们仅限会员的内幕文章中获取专家见解。

如何使用Kubernetes C#客户端库

Resim
使用Kubernetes并不总是那么容易。管理集群和Pod需要付出很多努力,尽管云托管的Kubernetes实例(例如Azure的AKS)可以为您处理很多繁重的工作,但如果您在本地或自己的虚拟基础架构上运行Kubernetes,则它们将不可用。 这就是Kubernetes API发挥作用的地方,因为它就是Kubernetes在组件与外部控制器之间进行通信的方式。 您可以使用kubectl命令行工具与API进行通信,也可以通过熟悉的REST(表示状态传输)调用来使用它。该API可帮助您管理工作负载,配置集群以及管理应用程序和集群的行为。 像这样的RESTful API是有用的工具,但是如果您要构建自己的控制器,它们需要大量的开发工作。 您可以通过使用一个正式的Kubernetes API客户端(现在包括一个.NET)来消除相关的开发开销。图书馆。除了正式版本外,还有非官方客户端,如果正式版本与您的使用方式不太相符,则它们包括两种替代的.NET实现。 .NET Kubernetes API客户端库简介官方.NET客户端库在GitHub上可用,由包括Microsoft人员在内的一组开源开发人员管理。当前版本是1.6。 21,并且正在开发中。您可以从GitHub下载代码并自行编译,也可以通过NuGet将库作为名为KubernetesClient的软件包添加到应用程序中。安装后,使用可加载客户端的using语句(如k8s)将库添加到代码中。 Windows代码。 要继续阅读本文,请立即注册 免费访问 紧贴InfoWorld的新闻通讯,以了解软件开发人员,分析师,数据库程序员和数据科学家的情况。 从我们仅限会员的内幕文章中获取专家见解。.

JDK 14:Java 14中的新功能

Resim
美国 英国 JDK 14:Java 14中的新功能 GA最新发布的标准Java的亮点包括飞行记录器事件流,开关表达式,NVM支持和记录 Java开发工具包(JDK)14已进入GA,并发布了用于生产部署的通用版本。升级到标准Java包括新功能,例如JDK Flight Recorder事件流,模式匹配和开关表达式。 紧贴InfoWorld的最新新闻稿,内容涉及软件开发人员,分析师,数据库程序员和数据科学家。 从我们仅限会员的内幕文章中获取专家见解。

动手看量子计算

Resim
尽管量子比特数量少,衰减率高且有大量噪声,但在1980年代提出的量子计算才刚刚开始可用。正如我们将要讨论的那样,IBM和Microsoft开始在其云中提供量子计算机和量子模拟器访问。 在其他地方,谷歌已经在其实验室中展示了量子计算功能(并声称拥有量子优势),但尚未宣布公开访问。 量子计算定义量子位是量子位。经典位具有两个可能的值0和1。量子位可以具有无限多个值,所有这些值都是两个经典状态的组合或叠加。范数为1的任何实数或复数的二维列向量都表示一个量子位持有的可能的量子状态。 您可以将其以3D形式描述为位于单位球体表面(称为Bloch球体)上的向量的矢量(请参见下图)。 当您以叠加态测量量子位时,量子态将随机分解为以下形式之一:这两个古典国家。您还可以将qubit显式设置为经典值(0或1)。测量具有经典值的量子位不会影响其状态。 要继续阅读本文,请立即注册 免费访问 紧贴InfoWorld的新闻通讯,以了解软件开发人员,分析师,数据库程序员和数据科学家的情况。 从我们仅限会员的内幕文章中获取专家见解。.

如何使用timeit来分析Python代码

Resim
通过设计,Python将便利性,可读性和易用性置于性能之上。但这并不意味着您应该适应缓慢的Python代码。您可能需要采取一些措施来加快速度。 在可用于分析Python代码性能的工具中,最简单的是timeit模块。 timeit通过执行数千次甚至数百万次代码并报告这些执行完成所需的时间来测量小片段代码(几行,一个函数)的速度。 timeit对于比较两种或三种不同的方式来做某事并查看最快的方式最有用。 例如,运行数千次循环的循环是Python的常见瓶颈。如果您找到一种加快执行该循环的方法(例如,使用Python内置而不是手写代码),则可以得到可衡量的性能改进。 一个简单的Python timeit示例 要继续阅读本文,请立即注册 免费访问 随时了解InfoWorld为软件开发人员,分析师,数据库程序员和数据科学家提供的新闻通讯。 从我们仅限会员的内幕文章中获取专家见解。