[go: nahoru, domu]

向下兼容

旧版本程序创建的文档或系统仍能被新版本程序正常操作或使用

这是本页的一个历史版本,由InternetArchiveBot留言 | 贡献2021年1月15日 (五) 16:43 (补救3个来源,并将0个来源标记为失效。) #IABot (v2.0.8)编辑。这可能和当前版本存在着巨大的差异。

向下兼容(downward compatibility),又称向后兼容(backward compatibility)、回溯相容,在计算机中指在一个程序硬體更新到较新版本后,用旧版本程序创建的文档或系统仍能被正常操作或使用(包括输入数据)、在旧版本库的基础上开发的程序仍能正常编译运行,或較舊版的硬體仍可在新版使用的情况。

軟體

文件系统中,ext4文件系统的设计就是向后兼容的,ext3的文件系统可以被当作ext4文件系统挂载。

通常更新一个软件时,应该为向下兼容性做出一定的考虑,这往往能给用户带来方便并更好地留住用户。Microsoft 特別強調維持軟件的向下兼容性。為了實現此一目標,有時微軟甚至不惜支持使用了非官方乃至误用的 API 的軟件。例如Microsoft Excel直到现在仍把1900年当作闰年,便是基于早期发售的Lotus 1-2-3也有相同的问题,如果修复此一问题,反而会引起更多的麻烦[1]。这是所谓的“漏洞兼容英语bug compatibility”。

但情况并不总是这样,有时为了考虑向下兼容会带来一些累赘,甚至增加開發的成本,尤其是进行过较多升级后。Python 3.0 便是放弃向下兼容的一个例子[2][3]

如果一个软件的旧的版本保存的文档不能被新版本读取,即使厂商提供了额外工具对旧文档进行不可逆转的转换,这也不能称作向下兼容。这可能是软件厂商的一种市场战略,强迫用户购买升级软件,随着升级用户逐渐增加,逐渐地使得旧软件能读取的文档越来越少。

硬體

以廣為使用的通用序列匯流排(USB)為例,從1998年的1.1版到2015年時的3.1版,A型的插頭與插座均可跨版本互相使用,僅新版本所支援的較大傳輸速率與一些新特性無法為舊版所使用。

藍光光碟機通常可向下相容讀取DVDCD

此外還有微軟公司推出的Xbox One遊戲機對Xbox 360,和任天堂推出的Wii UWii的旧版本游戏在新版本硬件中提供支持。但是索尼電腦娛樂推出的PS4遊戲機則不向下相容PS3的遊戲。

参见

参考资料

  1. ^ 微软 Office 官方技术支持. Excel 错误地假定1900年为闰年. 2019-10-12 [2019-11-09]. (原始内容存档于2020-10-23). 
  2. ^ Guido van Rossum. What's New in Python 3.0--Python v3.0b3 documentation. Python Software Foundation. [2008-08-30]. (原始内容存档于2008-10-04) (英语). 
  3. ^ 为了照顾现有程序,Python 提供了一个 Python 2.6 -> Python 3.0 的代码转换工具. 存档副本. [2008-08-30]. (原始内容存档于2012-07-29).