已弃用

“已弃用”是软件开发中用于表示某项功能正在逐步淘汰并被替代的术语。编程语言或软件应用中的已弃用功能可能仍然可以运行,但不再受到支持或改进。大多数已弃用功能最终都会被完全移除。程序或编程语言的开发者通常会提前几个月或几年宣布某项功能已弃用,以便软件开发者有时间实现替代功能。

处于积极开发中的编程语言和软件应用,偶尔会用全新的替代功能取代旧函数和其他功能。例如,在PHP中,用于将数字格式化为货币字符串的 money_format() 函数已被弃用,取而代之的是功能更强大的 NumberFormatter ,该类可以用多种方式格式化数字,包括将其格式化为货币。旧的 money_format() 函数在 PHP 7.4 宣布弃用后仍继续运行,让 PHP 开发者有时间提前更新其源代码,以便在 PHP 8 中将其完全移除。

标记为已弃用并不总是意味着某项功能一定会被移除,尤其是在使用时间较长的程序或语言中。即使有更好的实现方式,或者原始方法会导致系统不稳定,已弃用的函数也可能为了向后兼容而继续保留,从而让旧软件无需彻底改造就能继续运行。例如,JavaScript 的 escape() 函数由于对Unicode字符的支持较差而被弃用,但大多数Web 浏览器仍然提供该函数,以便运行旧的 JavaScript 代码。

Xcode 显示警告,指出此项目使用了已弃用的函数
Xcode 显示警告,指出此项目使用了已弃用的函数

软件和编程语言中的功能可能因以下几种原因而被弃用:

  • 引入了一个执行相同功能但性能更好或复杂性更低的替代功能,使已弃用的功能变得过时。
  • 与程序或语言当前状态不一致的旧功能可能会被弃用,改用重新设计的版本。这些功能可能使用过时的语法或命名约定,容易让新程序员感到困惑,因此会被弃用,并替换为更符合现代标准的版本。
  • 存在设计缺陷的功能例如安全漏洞或(内存泄漏)可能会被弃用,以阻止人们继续使用。
  • 为降低系统复杂性,冗余功能可能会被弃用并移除。
  • 程序或语言的计划变更会导致现有功能失效,因此该功能会提前被标记为已弃用,以鼓励开发者使用不会受到影响的替代方案。

NOTE:程序或编程语言的开发者会在文档和发行说明中宣布功能弃用。编程语言中的已弃用功能还会在软件开发者尝试使用它们时,触发该语言集成开发环境(IDE)中的警告消息。

更新日期 May 17, 2023 作者 Brian P.

quiz测试你的知识

Old source code that needs to be updated to run on modern systems is called what?

A
Source deficiency
0%
B
Code depreciation
0%
C
Technical debt
0%
D
Frozen software
0%
Correct! Incorrect!     View the Technical Debt definition.
More Quizzes →

Tech Terms 计算机词典

本页中已弃用的定义是由 TechTerms.com 的作者撰写的原创定义。如果您想引用本页或引用此定义,请使用定义正下方的绿色引用栏。

我们的目标是以简单易懂的方式解释计算机术语。我们努力使发布的每个定义都做到准确和简明。如果您对本定义有任何反馈,或想建议一个新的技术术语,请联系我们

Tech Terms 通讯

通过我们的每日或每周通讯提升您的技术知识!立即订阅,即可将新术语和测验发送到您的收件箱。

订阅免费的 TechTerms 通讯

您希望多久收到一封电子邮件?

您可以随时使用每封邮件中的链接取消订阅或更改接收频率。 有疑问?请联系我们

注意:通讯以英文发送。