向下兼容

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

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

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

但情况并不总是这样，有时为了考虑向下兼容会带来一些累赘，甚至增加開發的成本，尤其是进行过较多升级后。Python 3.0便是放弃向下兼容的一个例子为了照顾现有程序，Python 提供了一个 Python 2.6 -> Python 3.0 的代码转换工具. 。

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

参见
 路徑依賴
 垫片 (计算机)
 降级攻击
 向前兼容（向上兼容）

 参考资料 

分類:軟體設計
分類:互操作性

Category:電腦硬體
Category:电子游戏硬件
Category:電子遊戲術語