跳至內容

向下兼容

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

向下兼容(downward compatibility),又稱向後兼容(backward compatibility)、回溯相容,在計算機中指在一個程序硬體更新到較新版本後,用舊版本程序創建的文檔或系統仍能被正常操作或使用(包括輸入數據)、在舊版本庫的基礎上開發的程序仍能正常編譯運行,或較舊版的硬體仍可在新版使用的情況。

軟體

[編輯]

文件系統中,ext4文件系統的設計就是向後兼容的,ext3的文件系統可以被當作ext4文件系統掛載。

通常更新一個軟件時,應該為向下兼容性做出一定的考慮,這往往能給用戶帶來方便並更好地留住用戶。Microsoft特別強調維持軟件的向下兼容性。為了實現此一目標,有時微軟甚至不惜支持使用了非官方乃至誤用的 API 的軟件。例如Microsoft Excel直到現在仍把1900年當作閏年,便是基於早期發售的Lotus 1-2-3也有相同的問題,如果修復此一問題,反而會引起更多的麻煩[1]。這是所謂的「漏洞兼容英語bug compatibility」。

但情況並不總是這樣,有時為了考慮向下兼容會帶來一些累贅,甚至增加開發的成本,尤其是進行過較多升級後。Python 3.0便是放棄向下兼容的一個例子[2][3]

如果一個軟件的舊的版本保存的文檔不能被新版本讀取,即使廠商提供了額外工具對舊文檔進行不可逆轉的轉換,這也不能稱作向下兼容。這可能是軟件廠商的一種市場戰略,強迫用戶購買升級軟件,隨着升級用戶逐漸增加,逐漸地使得舊軟件能讀取的文檔越來越少。

參見

[編輯]

參考資料

[編輯]
  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).