【译文】维尔特定律:软件变慢的速度比硬件变快的速度更快
维尔特定律是计算机编程中的一句名言,它指出:”软件变慢的速度比硬件变快的速度更快”。这就产生了一个问题,尽管硬件的处理能力提高了,但软件的速度却变慢了。
这一定律出自尼克劳斯-埃米尔-沃思(Niklaus Emil Wirth)之手,他在 1995 年发表的一篇题为 “精益软件的诉求 “的论文中表达了这一观点。维斯是瑞士计算机科学家,被认为是计算机科学的先驱之一。他帮助设计了主要的编程语言,包括 Pascal 和 Oberon。维斯认为,软件发展缓慢的主要原因在于其复杂性。
有关 “维尔特定律 “
维尔特定律与摩尔定律相矛盾,摩尔定律是指芯片上的晶体管数量增加一倍,而价格却降低一半。从本质上讲,摩尔定律意味着计算机的速度和性能每两年提升一次。
但维尔特定律却并非如此。该定律认为,尽管硬件的容量和速度在不断提高,但软件的速度却无法跟上。软件变慢的速度远远超过硬件变快的速度。但为什么会这样呢?
精益(Lean)软件的必要性
Wirth 在他的论文 “A Plea for Lean Software “中指出,由于 “肥胖”,软件的运行速度越来越慢。肥胖软件指的是最终需要更多处理能力的复杂应用程序。因此,尽管拥有强大的硬件,它们仍然会降低性能。沃思列举了这些导致软件复杂化的原因:
- 采用用户想要的所有功能:客户往往会混淆功能(很好的功能)和特性(必要的功能)。尽管如此,软件供应商还是试图通过加入用户要求的所有功能来让用户满意。其结果是,客户花钱购买了所有功能,但实际使用的功能却屈指可数。
- 将复杂性误解为复杂性:沃思认为,”人们似乎把复杂性误解为先进性”。产品越复杂,用户就会显得越精明或知识越渊博。因此,软件供应商会开发复杂的软件,并发出这样的营销信息。
- 没有足够的时间开发软件:最后,肥胖软件盛行的原因是工程师根本没有足够的时间进行规划和设计。沃思说:”时间压力会逐渐腐蚀工程师的质量和完美标准”。
维尔特定律背后的其他原因
维尔特定律背后的真相并非只有复杂软件的功劳。软件和硬件之间的不兼容也是原因之一。例如,在为 Windows 7 设计的计算机上安装 Windows 10 会导致性能低下。
电脑恶意软件的存在也会影响电脑的性能。因此,无论你的软件和硬件如何优化,如果它们装满了恶意软件,那么你仍然会遇到性能缓慢的问题。
互联网连接速度慢也会影响任何基于网络的应用程序的运行速度,与计算机的性能无关。
类似概念
其他专家也提出了类似的格言,例如:
- 盖特定律Gate’s Law:软件速度每 18 个月减半。
- 梅氏定律May’s Law:软件效率每 18 个月减半,以补偿摩尔定律。
计算机科学家之间的一个内部笑话是这个版本的维尔特定律:”英特尔给的,微软拿走”。这句话的意思是,英特尔强大的硬件会被微软软件的复杂性所掩盖。
一些计算机专家认为沃思定律是正确的。虽然复杂的软件是主要的肇事者,但也有其他原因。任何软件的运行速度都会受到其设计、互联网连接速度、硬件兼容性和其他因素的影响。
无论原因是什么,沃思定律都强调了精益软件开发的必要性,而精益软件开发现已成为一种公认的趋势。
本文文字及图片出自 What is Wirth’s Law?
你也许感兴趣的:
- 具有魔法的 H.264
- 多用户环境中的 rootless Docker
- 【外评】微软的人工智能聊天机器人将 “回忆 “您在其新 PC 上所做的一切
- 【外评】苹果需要解释重新出现已删除照片的错误
- 你需要知道的现代 CSS 技巧(2024 年春季版)
- 使用 :has() 作为 CSS 父选择器及其他更多内容
- 【外评】大科技公司致欧盟:“去死”
- npm又被滥用,灰产用《庆余年2》盗版资源——把开源公共基础设施的羊毛薅秃了
- 【外评】如果您没有在 Edge 中使用必应,微软现在会说您的电脑需要 “修复”
- Chrome 浏览器开发工具(DevTools)现在使用双子座(Gemini )来帮助处理控制台中的 JavaScript 错误
你对本文的反应是: