5

【译文】维尔特定律:软件变慢的速度比硬件变快的速度更快

 1 year ago
source link: https://www.techug.com/post/what-is-wirths-law/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

维尔特定律是计算机编程中的一句名言,它指出:”软件变慢的速度比硬件变快的速度更快”。这就产生了一个问题,尽管硬件的处理能力提高了,但软件的速度却变慢了。

这一定律出自尼克劳斯-埃米尔-沃思(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?


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK