设置

关灯

大

中

小

第677章 别人家的坑 (4 / 5)

《关闭小说畅读模式体验更好》

        跟他们有关的也就只有一句“有代码迁移需要的用户,请点击这里‘迁移到ctp’。”

        李嘉明自己作为工蜂一员,平常工作用主要使用蜜蜂自己开发的编程语言,代码托管用的也是cta自带的ctp,但是对于其他主流工具也都是有所了解的。特别是这个np网站号称全世界最大的在线软件包管理器(packageanager),托管了最多数量的js代码,就更加不可能不知道。

        javasc日pt是一种直译式脚本语言,主要用在网页上,通过在网页中嵌入js模块,可以赋予网页动态交互功能,使之更加流畅美观,也能极大地减少网页开发成本。推出20年来js已经成为事实上的htl标准,在网站开发当中应用非常广泛,后来有了自带googlev8js引擎的nodejs,进一步扩展了这款简洁明了语言的使用范围。

        而np就是一款基于nodejs的包管理器,开发者利用它可以很方便地借用其他人贡献的开源代码,快速做出属于自己的网络应用。

        李嘉明只是简单搜了一下,就立即明白np果然是粗大事了。

        这种软件包管理器是用来管理开源软件的,开发者可以将自己觉得有用的软件或模块组件发布到这里,允许其他开发者按需下载组装成属于他的软件,然后再次发布。

        由于相关组件的查找、下载、组装、升级等工作都有p软件高效完成,大家也就习惯了需要某个功能时优先使用现成软件包,而不是自己动手码一个的习惯。特别是那些简单、常用的功能模块,因为其简单常用往往拥有非常多的引用下载数,热门组件的日下载数更是可以达到几十万甚至之多。

        也就是说只要开发者把这个组件更改甚至删除,就可能影响到其他几十万个次的软件运行。

        更糟糕的是,这种关系还可以传递:a软件依赖b、c包里面的内容,bc包又需要def包,导致a软件间接依赖def的情况。也就是说看似风马牛不相及的def软件包中任意一个出问题,a软件的运行就有可能受影响,如果a软件的开发者刚好偷了懒,为其设置了运行前检查更新的功能,那他100%要杯具。

        也不是没人看出其中蕴含的问题和风险,但是谁都没当一回事儿,至少np的运营公司和使用者都没理会这个问题。然后这个问题就在今天爆发了出来,以人为引发的方式。

        有位开发者indgirl删除了她名下全部57个软件包,导致依赖他们的1468个包报错,进一步引起五位数软件包的报错,受影响的软件和网络应用不下5万……

        内容未完,下一页继续阅读