咨讯息 · 2022年7月29日 0

“现如今,99.9%以内的标识符都是废弃物!”

作者 | Cliff Harris翻译者 | 弯月公司出品 | CSDN(ID:CSDNnews)

碰巧的一次,我须要使用网盘服务项目,就是把文档上载到某一地方(具体是另一家服务项目就不说了,反正都那样)。这只两个比较简单的操作方式,首先将硬碟上某一文档夹里的文档导入到远距服务项目器,接着再执行许多资料库操作方式,给文档起个名字,接着提供更多给浏览,Chavanges。

提供更多网盘服务项目的是一家大公司,体量很大,估计每天有不少骇客出访,所以他们须要许多保护措施,上载和浏览的时候还得校正文档是否被盗用等等,这都没问题。

但是,最基本的功能只不过是列举文档、加载文档、上载文档,接着停用连接,在笔记里写上成功,或者手忙脚乱的话在笔记里写手忙脚乱误原因。这又并非推进器科技,事实上我自己用wininet API写那段标识符,服务项目器用PHP和MySQL,尽管达不到虚拟化,但也能支持几百万文档的上载、浏览和笔记记录——两个人写标识符大概也就是两五周的工作效率?我的当今世界

然而,布季谢的那个专供上载辅助工具的应用程序一共有230MB,包含2700数个文档。

云主机、VPS、NDS宝、游戏服务项目器上永恒云

是的,你没弄错,2700数个文档,237MB的可执行文档和各种废弃物,仅仅是为了把文档复制到服务项目器而已。这已经不能叫收缩了,更并非过度设计,这理所应当到了刻薄的境地。我的当今世界

事实上,不仅是这个上载辅助工具,现如今任何人大型应用软件公司的任何人应用软件都那样。

电脑里 99.9% 以内的标识符都是毫无价值的废弃物

我知道咋,我也见过其他开发人员的实现方式。显然原因在于,开发人员显然要学怎样通过高效率的下层标识符来西凯努瓦县,他们即使从没见过下层的高效率标识符。没见过的东西怎么可能将做得出来,还要做得更好呢?我的当今世界

撰写两个安全、快速上载文档到服务项目器的应用软件,最多须要二六分之一的标识符量。只须要两个文档,两个exe文档就够了,显然不须要好几百个DLL。这是完全可能将的,而且会更容易、更可靠、效率更高,还很容易增容,即使能更稳定地工作。

标识符收缩似乎是像我这种说实话的碎碎念,毕竟我已经上年纪了。但我们一帮说实话们碎碎念的可并非标识符运行减缓了50%、体量增大了50%。实际情况不止于此。我的当今世界

我相信你电脑里99.9%以内的标识符都是毫无价值的废弃物,永远不会被运行。但这些标识符都堆在那儿,堆在65个DLL文档里,这都是因为开发人员想做许多不太重要的事情,比如保存一张图片,但他们完全要学得该怎么做,就干脆导入一大堆废弃物来实现。

我说过,看着年轻开发人员这样做我真不应该生气,毕竟他们学到的实现方式就是这样的。他们显然不知道高性能开发是什么样子,也没见过条件有限的应用软件是什么样子。你要是告诉他们,最初的Elite游戏能生成整个银河系,有3D狗斗,有职业系统,交易系统,还能探索上千个星球,而这一切只有64KB,他们也能接受,但完全没办法理解这与现在的应用软件之间有什么差距。我的当今世界

CPU和内存都有限才是编程的黄金时代

为什么我关心这件事?原因有很多,最简单的就是当你花费两千倍的时间来做两个东西,它就应该能用。但更重要的是,我知道99.9%的CPU时间都浪费在这些废弃物上。每秒执行几百万指令,结果毫无价值。本来我的电脑应该处于极低功耗,风扇都不应该转,因为我现在干的只不过是在wordpress里写字而已。我的当今世界

如果我没猜错,因为电脑里有99%的废弃物,99%的电力都被浪费了,这已经不能用犯罪来形容了。这些浪费的电力都干什么了?我不知道,但看看任务管理器就知道了:一大堆不知道是什么也不知道在干什么的东西。我的当今世界

我现在只不过写篇文章,Windows就要运行102个后台进程。NVidia显卡有6个进程,许多即使还有子进程。干啥呢?我又没玩游戏,对于显卡来说我现在干的事儿跟20年前没什么区别,但就是要6个进程。

微软的Edge浏览器也有6个进程,它的Web View还有6个。我即使都没打开Edge。可能将是我昨天开了一张SVG图,这就出现了12个毫无价值的进程在那儿浪费内存和CPU?这简直刻薄。我的当今世界

这就是为什么一切都不能正常工作,为什么一切都很慢,为什么你每年都要买新手机和新电视,买新的只不过是为了运行更多废弃物程序而已。

我悲观地认为,事情只会越来越糟,因为像Facebook、Twitter、Reddit这些笨头笨脑的巨无霸公司正是现在的趋势。每个公司都有好几千位开发人员,使用机器学习从GitHub复制粘贴这些毫无价值的废弃物标识符。两个数相加就要使用32个DLL和16个Windows服务项目还有几亿行标识符。我的当今世界

Twitter有两千个开发人员。但Tweetdeck偶尔还是无法加载某一用户的时间线。这个bug已经有四年多了,我估计没人知道为什么,背后的标识符只不过是一堆复制粘贴的废弃物。

再说Reddit,从链接加载标题的功能无法正确处理&和分号,这都2022年了。估计他们也有2000数个开发人员,但即使没人会写文本分析器,所以他们拿钱是干什么的?我的当今世界

曾经CPU和内存都有限的那个时代,才是编程的黄金时代;而现在,我们生活在一堆毫无效率的废弃物里。呜呼哀哉!

永恒云公司出品