1. 首页
  2. 综合百科
  3. 冬天意味着什么

冬天意味着什么

简介:关于冬天意味着什么的相关疑问,相信很多朋友对此并不是非常清楚,为了帮助大家了解相关知识要点,小编为大家整理出如下讲解内容,希望下面的内容对大家有帮助!
如果有更好的建议或者想看更多关于综合百科技术大全及相关资讯,可以多多关注茶馆百科网。

5月9日,Cloudflare在其官方博客上宣布,将与Node.js和Deno开源项目的核心贡献者合作,组建一个名为winter CG(Web-inter operative runtime group)的新社区团体,该团体汇集了三个最大的JavaScript环境,为开发者提供了灵活性和选择,并创建了边缘计算的未来标准。通过一套通用的标准,允许在Node.js、Deno、Cloudflare的无服务器环境下编写可移植的应用,同时不再需要重写代码,实现了& quot写一次就到处跑& quot。

Cloudflare的联合创始人兼首席执行官MatthewPrince说这是以前无法实现的壮举。JavaScript正在被数百万开发者使用,也是普通开发者学习的第一语言。到目前为止,JavaScript标准完全集中在前端,比如浏览器。"马修普林斯补充道通过标准化核心JavaScriptAPI,兼顾前端和后端,可以授权前端开发者以熟悉的方式访问后端。"

针对这个消息,我们采访了Deno的核心贡献者justjavac,他说:& quot这个社区早就应该建立了!这样,云计算或边缘计算平台就可以提供与Web一致的API,而不是开发自己的API。对于社区开发者来说,不需要额外学习一套API,写一套代码就可以部署到不同的平台。"

WinterCG社区成立的初衷是什么?

根据Cloudflare官方的描述,WinterCG社区组的本质是为JavaScript运行时在API互操作上提供一个协作的空间。这种协作包括三个方面,即:运行时之间的讨论;现有规范社区(WHATWG、W3C)中WebAPI的提案,包括现有提案和新提案;改进和维护现有运行时行为的文档。

对此,justjavac认为Node.js发布的时候,还没有那么多的WebAPI规范,所以Node.js设计了一套服务器端API,比如Deno在设计之初就直接重用了WebAPI,大多数JavaScript开发者对这些API都非常熟悉,比如fetch、URL、TextEncoder等等。后来WHATWG制定了很多WebAPI规范,最新版本的Node.js开始加入符合WHATWG规范的API。

但是,这些WebAPI并不能完全按照标准在服务器端实现。毕竟Web标准是为浏览器制定的。如果每个服务器端都按照自己的方式运行,最后的结果就是代码只能在特定的平台上运行,这也是Cloudflare建立WinterCG的初衷。

不难看出,新成立的WinterCG将更加注重非web浏览器特定需求的实现,与目前专注于Web平台功能和API开发的现有社区组织形成互补。WinterCG的目标更明确:专注于在后端服务器、无服务器计算、物联网、命令行工具和其他环境中实现这些相同的功能。

像CloudflareWorkers这样的无服务器环境,或者Node.js、Deno这样的运行时,问题范围很广,需求也不一样,这些都与Web浏览器无关,反之亦然。最后,在开发各种规范时,这些不同需求的脱节和缺失,导致了——非浏览器运行时实现了自己定制的、临时的解决方案,一直运行在各种生产环境中的局面。

WinterCG社区的建立就是为了改变上述问题。它提供了一个讨论和宣传所有Web环境的公共需求的地方,并且可以部署在堆栈中的任何地方。对于开发者来说,代码的可移植性非常重要。如果你写了一组代码,想把它移植到不同的环境(比如从Node.js移植到Deno),你应该不会想完全重写吧?

CloudflareWorkers、Node.js、Deno和Web browser虽然差别很大,但是有很多共同的功能。比如都提供API用于生成加密哈希;它们都以某种方式处理流数据;它们都提供了在某个地方发送HTTP请求的能力。如果有重叠,并且需求和功能是相同的,那么环境应该实现相同的标准化机制。

所以WinterCG通过制定一套通用的标准,让开发者只关心自己写的代码能不能正常运行,不管在哪里运行。

WinterCG:不打算发布一套独立的标准API集

据悉,新的WinterCG社区组将在W3C的既定流程下运行。

从集团的命名可以看出,重点是& quot网络互操作& quot。根据官方的解释,& quotweb & quot此处使用的术语与W3C和WHATWG社区使用的术语完全相同。准确的说法是& quot网络浏览器& quot。因此,术语& quot网络互操作& quot是指以与web浏览器相同的方式或至少尽可能一致的方式实现功能。例如,新的URL()构造函数在浏览器中的工作方式与新的URL()构造函数在Node.js、Deno和Cloudf中的工作方式相同。

lareWorkers中的工作方式完全相同。


对于WinterCG来说,承认Node.js、Deno和CloudflareWorkers明确不是web浏览器这一事实很重要。虽然这一点显而易见,但仍有必要指出,因为各种JavaScript环境之间的差异可能会极大地影响标准化API的设计决策。


对此,官方举例说明,Node.js和Deno都提供对本地文件系统的完全访问。相比之下,CloudflareWorkers没有本地文件系统;并且Web浏览器必然会限制应用程序操作本地文件系统。同样,虽然Web浏览器固有地包括一个网站“origin”的概念并实现CORS等机制来保护用户免受各种安全威胁,但在Node.js,Deno和CloudflareWorkers操作的服务器端却没有相同的“origin”概念。


到目前为止,W3C和WHATWG都非常关注Web浏览器的需求。WinterCG这一新的Web可互操作的运行时社区组将明确地处理并倡导每个人的需求。


对此,WinterCG也表示,自己并不打算发布一套独立的标准API集。WinterCG中发布的新规范的想法也会先提交给W3C和WHATWG进行考虑,以获取和达到更多的共识。但是,如果Web浏览器对其他环境(如CloudflareWorkers)所需要的功能没有特别的需求,WinterCG将被授权以自己发布的规范进行推进。前提约束是不会有意引入与已建立的Web标准相冲突或不兼容的内容。


最小通用WebAPI


“最小通用Web平台API是标准化Web平台API的一个精心设计的子集,旨在定义浏览器和非浏览器基于JavaScript的运行时环境的通用功能的最小集合。”这是目前规范草案中的相关介绍。


换个说法来说:它是一组最小的现有WebAPI,将在Node.js、Deno和CloudflareWorkers中一致且正确地实现。大多数API(除了一些例外和细微差别)已经存在于这些环境中,因此剩下的大部分工作是确保这些实现符合它们的相关规范并且可跨环境移植。


WinterCG表示,每当某个环境偏离API的标准化定义时(比如Node.js对setTimeout()和setInterval()的实现),就会提供描述这些差异的清晰文档。而这种差异应该只存在于与现有代码的向后兼容性中。


除此之外,WinterCG目前已经开始起草“WebCryptoStreams”的新规范,并提交给W3C进行考虑。WebCryptographyAPI为常见的加密操作提供了一个最小并且非常有限的API,它的主要限制之一是与Node.js的内置crypto模块不同。Deno是直接按webcrypto规范实现的,而Node的内置crypto模块很早就开发完了,此次根据Deno和Node.js的现有实现制定规范,这为以后对其他平台的实现来说将更加方便与规范化。


针对目前Node.js、Deno和CloudflareWorkers实现fetch()的方式与在web浏览器中实现的方式有许多重要差异的问题,也为了使非Web浏览器环境更容易以一致的方式实现fetch,WinterCG正在编写获取fetch的一个子集,专门处理那些不同的需求和约束。这个子集将与fetch标准完全兼容,并且由在Node.js、Deno和CloudflareWorkers中从事fetch工作的同一批人合作开发。这也不会成为fetch标准的竞争定义,而是一组关于如何在其他环境中正确实现fetch的文档化指南。


WinterCG:我们才刚刚开始


WinterCG表示,Web可互操作的运行时社区组才刚刚起步,他们有许多雄心勃勃的目标。所有人都可以参与,所有工作都将通过GitHub的https://github.com/wintercg公开完成。目前,WinterCG正在积极寻求与W3C、WHATWG和整个JavaScript社区的合作,以确保Web功能可用、始终如一地工作,并满足在堆栈中任何地方工作的所有Web开发人员的要求,它所做的一切都将以最大化互操作性为目标。


最后,感谢justjavac(迷渡)老师的专业观点以及对本文的指导。


参考链接:


https://wintercg.org


https://github.com/wintercg/admin


https://blog.cloudflare.com/introducing-the-wintercg/


https://www.w3.org/community/wintercg/


https://deno.com/blog/announcing-wintercg

了解更多软件开发与相关领域知识,点击访问InfoQ官网:https://www.infoq.cn/,获取更多精彩内容!

本文主要介绍了关于冬天意味着什么的相关养殖或种植技术,综合百科栏目还介绍了该行业生产经营方式及经营管理,关注综合百科发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解综合百科技术怎么管理的要点,是您综合百科致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://23.234.50.4:8411/article/99992.html