自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(937)
  • 收藏
  • 关注

翻译 不,Python 2没有获得延期

到目前为止,各地的Python用户都痛苦地意识到Python 2已经到了使用寿命。 对于Pythonista使用者来说,到2020年1月1日的倒计时不仅仅是观看时代广场的落球。 这也是关于尽可能迁移到Python 3并减轻Python 2失去官方支持的影响。 那么关于2020年4月即将退休的Python 2,您可能会听说些什么? 实际上,这始终是计划。 [ 同样在InfoWorld上:...

2020-05-21 07:13:54 81

翻译 开始使用Python进行异步处理

异步编程(简称异步)是许多现代语言的功能,它使程序可以处理多个操作,而无需等待或挂断其中的任何一个。 这是一种有效处理网络或文件I / O等任务的明智方法,其中程序的大部分时间都花在等待任务完成上。 考虑一个打开100个网络连接的Web抓取应用程序。 您可以打开一个连接,等待结果,然后打开下一个连接并等待结果,依此类推。 程序运行的大部分时间都花在等待网络响应上,而不是在做实际的工作。 ...

2020-05-21 06:53:54 3854

翻译 Dapr使微服务变得轻松

如果您想充分利用云原生应用程序,则需要以不同的方式思考如何构建代码。 扩展取决于无状态微服务,该服务使用API​​进行服务间通信。 Kubernetes等技术可通过监视资源或使用KEDA(基于Kubernetes的事件驱动的自动缩放)来触发基于事件的缩放来帮助管理微服务扩展,而基于HTTP的技术(例如gRPC)则是将API视为方法和函数调用的基础。 构建分布式应用程序似乎常常像在重新发明轮...

2020-05-21 06:43:54 915

翻译 React Native修复了“破碎”的重新加载

Facebook的React Native是一个使用React JavaScript UI框架构建本机iOS和Android应用程序的框架 ,在React Native 0.61发行版中获得了新的和改进的重新加载体验,称为快速刷新。 快速刷新结合了现有的“实时重载”(保存时重载)和“热重载”功能。 快速刷新基于以下原则: 支持现代React,包括Hook和功能组件。 错别字和其他...

2020-05-21 06:33:54 266

翻译 如何充分利用Azure Cosmos DB的免费层

Azure的Cosmos DB是其最佳功能之一。 一个多模型分布式数据库,它为您构建具有一系列可映射到您的应用程序工作方式的一致性模型的真正云原生应用程序奠定了基础。 但是上手并不容易,配置或设计不当的应用程序很快就会变得昂贵。 很高兴看到Cosmos DB 现在具有免费层 ,可以帮助您开始在有限的开发环境之外部署应用程序。 新的层并不大:它基于Cosmos DB的最低配置,并提供400 ...

2020-05-21 06:23:54 144

翻译 如何在C#8中使用GUID

在应用程序中工作时,您可能经常需要使用全局唯一标识符(GUID)。 SQL数据库中的主键之类的唯一标识符可确保不会重复或覆盖客户和发票等重要对象。 没有唯一的标识符,我们将无法防止数据丢失或确保应用程序的数据完整性。 全局唯一标识符(GUID)代表一个巨大的标识号,它很大,以数学方式保证不仅在数据库之类的单个系统中而且在多个系统或分布式应用程序中都是唯一的。 本文讨论了为什么需要GUID,...

2020-05-21 06:13:54 273

翻译 如何聪明地安装Python

Python易于使用,对初学者友好且功能强大,足以为几乎所有应用程序创建健壮的软件。 但是它仍然像其他软件一样是一块软件,这意味着它的设置和管理可能很复杂。 在本文中,我们将逐步介绍如何以正确的方式设置Python:如何选择合适的版本,如何防止多个版本相互冲突,以及如何避免沿线的所有其他尖锐边缘和潜在陷阱。道路。 [ 同样在InfoWorld上:8个出色的Python库,用于自然语言...

2020-05-21 06:03:54 179

翻译 A2ML项目使AutoML自动化

自动化机器学习工具供应商Auger.AI正在为多个基于云的AutoML服务开发Python API和工具,从而允许数据科学家针对多个AutoML模型训练数据集,以产生最佳可能的预测模型。 称为A2ML,对于Automate AutoML,该开放源代码项目由一个API和命令行工具组成,这些工具目前处于测试阶段。 该计划要求为基于云的AutoML服务提供通用的API。 开源API与“第二代” ...

2020-05-21 05:33:54 55

翻译 您好,MicroK8:更简单的Kubernetes

Kubernetes正在Swift成为基于容器的应用程序的事实平台。 Kubernetes自动执行容器化应用程序的部署和扩展,并简化了维护任务,例如更新和升级。 自2014年Google开源以来,这项技术一直是令人难以置信的成功故事。 结果,全世界的开发人员,系统管理员和技术爱好者不仅对学习Kubernetes感兴趣,而且Kubernetes越来越成为他们工作的一部分。 [发现Info...

2020-05-21 05:13:54 165

翻译 JDK 14:Java 14中的新功能

Java开发工具包(JDK)14已发布到GA,已发布用于生产部署的通用版本。 升级到标准Java包括新功能,例如JDK Flight Recorder事件流,模式匹配和开关表达式。 JDK 14是Java的功能版本,而不是长期支持(LTS)版本,这是为Java设置了六个月的发布节奏 。 JDK 14将在4月和7月收到安全更新,然后由9月发布的非LTS版本的JDK 15取代。 当前的LTS...

2020-05-21 05:03:54 199

翻译 为什么Rust语言正在兴起

您可能从未用Mozilla创建的开源,系统级编程语言Rust编写任何东西,但是您可能会在某个时候写。 在Stack Overflow的2019年开发人员调查中 ,开发人员将Rust评为“最受欢迎的”语言,而Redmonk在半年的语言排名中 ,Rust 跻身前20名(排名第21)。 尽管Rust用户“仍然发现该语言在内存安全性和正确性方面受到高度吹捧的特性使他们感到困难和沮丧”。 [ 什...

2020-05-21 04:53:54 746

翻译 GitOps将Git的力量带入Ops

到目前为止,您可能已经听说过GitOps ,如果是这样,您可能仍然想知道它的含义。 如果我告诉您GitOps不一定涉及Git(不,实际上),也可能不需要帮助 ,它也不需要Kubernetes (与之定期配对的编排引擎)。 感到困惑? 好吧,尝试一下:GitOps是一种以开发人员为中心的体验来管理应用程序的方法,正如创造“ GitOps”一词的公司Weaveworks 所说 。 坦率地说,这...

2020-05-21 04:33:54 112

翻译 集装箱进军主流

当爱迪生发明灯泡时,它有一个问题:它需要硬连线到灯上。 因此, 爱迪生螺丝成为当今的标准,可以将几乎所有灯泡都拧成几乎任何灯具,无论是台灯还是枝形吊灯。 十年前,所罗门·海克斯(Solomon Hykes)发明的Docker容器产生了类似的效果:通过打包,任何Linux应用程序都可以插入任何Linux OS上的任何Docker容器,而无需繁琐的安装。 更好的是,多个容器化的应用程序可以插入...

2020-05-21 04:13:54 80

翻译 红帽绘制CodeReady工具路线图

红帽已经为其云和Kubernetes开发的CodeReady工具组合制定了计划。 这些包括发布时间表,以添加CodeReady工作区,CodeReady依赖关系分析,CodeReady工具链,Visual Studio Code和IntelliJ IDE支持,以及基于Git的新应用交付或“ GitOps”功能。 [ 同样在InfoWorld上:远程敏捷团队的7个最佳实践 ] Code...

2020-05-21 04:03:54 326

翻译 Oracle将GraalVM与Google Go对抗

甲骨文将GraalVM(该公司的开源多语言虚拟机 )定位为Google Go(golang)的替代品或替代品。 GraalVM被描述为“通用VM”,可以运行以JavaScript,Python,Ruby,C和C ++以及JVM语言(包括Java,Kotlin和Scala)编写的应用程序。 该项目背后的Oracle开发人员表示,GraalVM与Go一样,提供了快速启动和较小的内存空间。 但是...

2020-05-21 03:43:54 683

翻译 如何在C#中使用控件反转

控制反转和依赖性注入都使您能够打破应用程序中组件之间的依赖性,并使应用程序更易于测试和维护。 但是,控制反转和依赖注入并不相同-两者之间存在细微差异。 在本文中,我们将检查控制模式的反转,并通过C#中的相关代码示例了解其与依赖注入的区别。 若要使用本文提供的代码示例,您应该在系统中安装Visual Studio 2019。 如果您还没有副本,则可以在此处下载Visual Studio ...

2020-05-21 03:33:54 705

翻译 每种编程需要12个Python

当您选择使用Python进行软件开发时,您将选择一个大型语言生态系统,其中包含可满足各种编程需求的大量软件包。 但是,除了从GUI开发到机器学习的所有库之外,您还可以从许多Python运行时中进行选择-其中某些运行时可能比其他运行时更适合您的用例。 这是从标准实现(CPython)到针对速度(PyPy)优化的版本,特殊用例(Anaconda,ActivePython),不同语言运行时(Jy...

2020-05-21 03:23:54 126

翻译 DeepCode利用AI进行代码审查

通过利用人工智能来帮助清理代码,DeepCode旨在成为编程助手,即Grammarly对书面通信的编程。 类似于开发人员的拼写检查器,DeepCode的云服务可检查代码并提供有关严重漏洞的警报,目的是阻止安全漏洞将其投入生产。 目标是启用更安全,更干净的代码,并更快地交付它。 [发现InfoWorld的2019年Bossie奖获得者: 适用于软件开发,云计算,数据分析和机器学习的最佳开...

2020-05-21 03:13:54 1359

翻译 启动devops程序的3种方法

Devops代表了开发和运营团队合作方式的文化变革,以及一系列最佳实践,可推动自动化,可靠性和加快部署变更的速度。 协调是由希望频繁将代码发布到生产环境的敏捷开发团队之间以及必须支持应用程序,数据库,基础结构和网络的高可靠性,安全性和可伸缩性的运营员工之间的共识所推动的。 诸如CI / CD(连续集成和连续交付)和IaC(基础架构代码) ,使用容器构建的平台以及使用AIops管理的环境等自...

2020-05-21 02:53:54 238

翻译 建议对WebAssembly进行的重大更改

WebAssembly是一种备受吹捧的二进制格式,旨在加快Web应用程序的速度,它计划添加多值功能,使函数能够返回许多值,并带来代码大小的好处和新的指令可能性。 该提案将取消对函数的当前限制,这些函数只能返回零或一个值,而指令blocks (例如blocks , ifs和loops不能消耗堆栈值,而只能产生零个或单个结果堆栈值。 [ 同样在InfoWorld上:什么是CI / CD? ...

2020-05-21 02:43:54 139

翻译 熊猫1.0带来了重大突破

用于Python的数据分析库Pandas最终达到了1.0版本的候选标准。 Pandas 1.0删除了大量不推荐使用的功能,并且需要Python 3.6或更高版本。 创建Pandas的目的是轻松处理结构化格式的数据,例如表格,矩阵和时间序列数据。 Pandas使R的数据框的许多功能黯然失色,并且可以与Python世界中的其他科学计算库很好地配合使用。 [ 同样在InfoWorld上:每...

2020-05-21 02:33:54 76

翻译 JavaFX 14增强了API,移动支持

JavaFX 14是基于Java的开放源代码的丰富客户端应用程序平台的最新版本。 新版本具有与顶级API和移动开发相关的改进。 对于API,添加了功能,使开发人员可以更轻松地构建自定义控件。 从移动的角度来看,用于移动SDK的JavaFX现在是从OpenJFX构建的,该资源与台式机JavaFX的来源相同。 JavaFX与GraalVM本机映像AOT(提前)编译器结合使用,现在可以在移动设备...

2020-05-21 02:23:54 208

翻译 Go语言真正有什么用处?

在过去的九年里,谷歌的Go语言 (又名Golang) (截至2019年9月发行的版本为1.13)已经从对alpha怪胎的好奇心演变为成为世界上一些最重要的语言背后经过考验的编程语言以云为中心的项目。 为什么Docker和Kubernetes等项目的开发人员选择了Go? Go的定义特征是什么?它与其他编程语言有何区别?它最适合构建哪种项目? 在本文中,我们将探讨Go的功能集,最佳用例,语言的...

2020-05-21 02:13:54 1441

翻译 什么是Azure机密计算?

构建和运行现代的云原生应用程序存在风险。 最大的问题之一是,您正在与数量不明的其他用户共享计算资源。 您的内存和CPU是共享的,并且始终存在数据意外跨越边界泄漏的可能性,可以从组织外部访问这些数据。 泄露,即使是偶然的泄露,也仍然是违反,并且,如果您使用Azure或其他云平台来处理个人身份信息甚至您自己的财务数据,那么您将违反任何合规性法规。 不仅用户或财务数据可能受到威胁; 您的代码是您...

2020-05-21 01:53:54 257

翻译 如何在C#中使用匿名类型

匿名类型是没有名称的类型。 您可以使用匿名类型将一组只读属性封装在单个单元内-无需事先定义匿名类型。 本文讨论了什么是匿名类型,为什么它们很重要,以及我们如何在C#中使用匿名类型。 若要使用本文提供的代码示例,您应该在系统中安装Visual Studio 2019。 如果您还没有副本,则可以在此处下载Visual Studio 2019 。 [ 同样在InfoWorld上:您将犯下的...

2020-05-21 01:43:54 527

翻译 AI在企业中变得真实(某种)

两年前,正如我在这篇文章中试图抓住的那样 ,人工智能(AI)达到了荒唐的期望的顶峰。 今天? 好吧,现实似乎已经进入了现实,这表明了公司如何接近AI,这一直是专注于低挂的水果,而不是月球。 根据德勤第二版《企业中的AI状况》 ,该揭露了一个越来越重视AI的世界。 话虽如此,数据中仍然有一些令人头疼的问题。 让我们深入研究报告。 [理解机器学习的意义: 人工智能,机器学习和深度学习:您需...

2020-05-21 01:33:54 71

翻译 加入10个软件开发邪教

每个程序员都知道这种感觉。 您已经写了几行,对其进行了测试,然后将它们检入了一些存储库。 现在是时候停下来,喘口气,也许反思一下这一切的威严,然后又开始沉迷于对您最新的程序员的狂热。 不管您是从今年秋天开始第一个编程类,还是一直在编写位敲打式代码都没关系,因为必须将其切换到Altair的前面板中。 谈论诸如正确性或准确性之类的世俗事物真是太有趣了。 只有客户端对代码是否符合规范进行争论。 ...

2020-05-21 01:13:54 292

翻译 .Net Core 3.0对开发人员意味着什么

很难相信.Net已有将近18年的历史。 .Net Framework的第一个公开版本于2002年2月。多年来,它已成为Windows开发的基础, 随着2014年.Net Core的发布和.Net Foundation的成立,它开始了从其专有根源转移到旨在作为所有.Net开发基础的开源开发模型。 .Net Core推出时具有有限的功能集,但已Swift开始赶上.Net Framework。 ...

2020-05-21 01:03:54 154

翻译 在Kubernetes上做无服务器的5种方法

称其为“ 无服务器 ”,称其为“事件驱动的计算”或称其为“功能即服务(FaaS)”,其思想是相同的:动态分配资源以运行单个功能,本质上是微服务 ,这些功能在响应中被调用事件。 无服务器计算平台允许应用程序开发人员专注于应用程序,而不是基础架构及其所有管理细节。 大多数云提供商都提供了某种无服务器平台,但是您可以仅使用两种要素来构建自己的平台。 其中之一就是Kubernetes ,它是一种容...

2020-05-21 00:53:54 129

翻译 您如何备份容器化的应用程序?

随着越来越多的企业为应用程序采用容器化方法,对有效备份系统的需求变得至关重要。 容器具有独特的特性,使它们与其他部署模型区分开来,并且如果没有正确的备份体系结构,企业将面临大量停机,数据丢失或两者兼有的风险。 IDC 发现 ,有76%的企业正在将容器广泛用于任务关键型应用程序,其中改进的安全性和运营管理被认为是关键驱动因素。 我们自己的调查发现,有87%的企业使用集装箱,其中90%用于生产...

2020-05-21 00:33:54 129

翻译 Chef Infra 16添加了YAML配方支持

基础架构代码专家Chef已发布了其平台的新版本– Chef Infra 16,其目的是减少新客户的学习曲线,同时也解决现有用户的常见痛点。 Chef Infra 16增加了使用YAML编写配方的功能,YAML是一种通常用于配置文件的流行数据序列化语言。 Chef Infra 16还引入了对ARM处理器上的几种Linux发行版的支持,包括Red Hat Enterprise Linux 8,...

2020-05-21 00:23:54 98

翻译 开源许可证应该打击邪恶吗?

开源已经受到火灾在近几年,随着公司像 MongoDB的希望改变其本身的定义,以包括专有软件。 但是,最新的,更有针对性的齐射可能造成最大的损失。 上周四,为了响应Chef 愿意与美国移民和海关执法局(ICE)做生意,一位开源开发人员从Chef撤回了他的软件 ,导致客户系统瘫痪。 到周五,Chef不仅解决了停电问题,而且撤销了与ICE开展业务的政策 。 [关注InfoWorld上的开源开...

2020-05-21 00:13:54 162

翻译 Google Bazel构建并测试Bazel 1.0

Google的Bazel构建工具是一个支持多种语言和平台(包括Angular Web框架和TensorFlow机器学习库)的开源系统,现已达到1.0版的状态。 Bazel的定位是提供更快的构建速度,并且构建正确且可扩展。 该工具利用统一的扩展语言Starlark(以前称为Skylark)来定义构建。 [新的Java即将来临! 了解有关Java JDK 13中的新增功能的所有知识。 | ...

2020-05-21 00:03:54 161

翻译 Cython教程:如何加速Python

Python是一种功能强大的编程语言,易于学习且易于使用,但它并非总是运行速度最快的语言,尤其是在处理数学或统计信息时。 NumPy之类的第三方库包装了C库,可以显着提高某些操作的性能,但是有时您只需要直接在Python中使用C的原始速度和功能即可。 Cython的开发是为了使编写Python的C扩展变得更容易,并允许将现有的Python代码转换为C。此外,Cython允许将优化的代码与P...

2020-05-20 23:53:54 696

翻译 Kotlin 1.4将推出更快的编译器

Kotlin 1.4的计划是对2020年语言的升级,其中包括重新实现编译器以提高执行速度。 JetBrains的Kotlin开发人员认为, Kotlin 1.4的重点应该放在“质量和性能”上,而不是添加“大”功能。 JetBrains承诺新的编​​译器实现“将非常快,统一Kotlin支持的所有平台,并提供用于编译器扩展的API。” [ 同样在InfoWorld上:什么是Kotlin?...

2020-05-20 23:43:54 225

翻译 “隐私至上” Brave浏览器退出测试版

勇敢的软件已经发布了勇敢的1.0,这是其有争议的,以隐私为重点的Web浏览器的正式GA版本。 开源浏览器将基于区块链的数字广告和支付平台与“设计私密性”结合在一起,通过阻止跟踪器,侵入式广告和设备指纹识别来对抗“监视资本主义”。 该公司表示,这提高了速度,隐私,安全性和性能。 [ 也在InfoWorld上:10个软件开发崇拜者加入 ] 默认设置还会阻止恶意软件,恶意广告和网络钓鱼。...

2020-05-20 23:33:54 167

翻译 LLVM 10支持Wasm,C / C ++和TensorFlow

LLVM 10是开放源代码编译器框架的升级,它是许多语言运行时和工具链背后的升级,今天经过了许多延迟之后才可用。 LLVM 10的最大新增功能是对MLIR的支持, MLIR是一种可编译为LLVM内部语言的子语言, 并由TensorFlow等项目使用,以有效地表示如何处理数据和指令。 直接使用LLVM加速TensorFlow很笨拙; MLIR为此类项目提供了更有用的编程隐喻。 MLIR项...

2020-05-20 23:23:54 677

翻译 Kubernetes的头盔获得了CNCF的完全批准

用于将应用程序的预定义“图表”部署到Kubernetes集群中的Kubernetes程序包管理器Helm ,现已从Cloud Native Computing Foundation孵化毕业,这是一个成熟的CNCF项目。 用通俗易懂的语言:Helm待在这里。 [ 同样在InfoWorld上:使Kubernetes更好的11种工具 ] 对于当前的Helm用户,这变化很小。 舵图无需进...

2020-05-20 23:13:54 77

翻译 无服务器架构的下一步是什么?

无服务器服务无处不在。 迈向新的编程方式的推动力,无服务器产品以各种形式和形式出现,包括应用程序托管平台,无服务器数据库,CDN,安全产品等。 无服务器产品消除了底层配置,可伸缩性和供应方面的问题,而剩下的最后就是分发问题。 这里,无边缘服务器通过在多个数据中心之间分布数据和计算来提供解决方案。 边缘无服务器通过使计算更接近用户来减少延迟。 [ 不要错过InfoWorld的2020年...

2020-05-20 23:03:54 100

翻译 隐藏的类可能会进入Java

OpenJDK开发团队提出的一项建议是将隐藏类添加到Java中,该功能旨在提高基于JVM的语言实现的效率。 根据JDK Enhancement Proposal ,隐藏类是不能被其他类的字节码直接使用的类。 而是,隐藏类旨在由在运行时生成类并通过反射间接使用它们的框架使用。 可以将隐藏类定义为访问控制嵌套的成员,并且其类加载器可能会弱引用。 目前尚无时间表何时可能在Java中出现隐藏的类。...

2020-05-20 22:53:54 129

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除