下位互換、上位互換、前方互換、後方互換がわからない

たとえば下位互換の場合、下位のものが上位に対して互換性があるのか、上位のものが下位に対して互換性があるのか、いつもわからなくなる。
誤用も多いようなので、この単語だけからでは実際のところどうなのかは判断できないようだ。

上位互換

機能やグレードが上位のシステムが、下位のシステムの規格を扱えること。


Wikipediaでは例として次のようなものが挙げられている。

わかりやすい。
しかし、任天堂はこのことを下位互換と表現しているようだ。

下位互換

上位互換の逆で、機能やグレードが下位のシステムが、上位のシステムの規格を扱えること。
ただし機能の一部が使えなかったりはする。


Wikipediaでは例として次のようなものが挙げられている。

  • ワープロソフトで旧形式でファイルを保存すれば、古いバージョンでも読み込むことができる。
  • FAT32形式のパーティションFAT16形式として読み込むことができる。

なんか微妙な気がする……。これは下位互換かつ前方互換かな。
というわけで純粋な例を付け加えるとすると、

  • Professional版で作ったデータがLite版でも扱える。

とかそんな感じか。

前方互換

新しいシステムの規格を、古いシステムが扱えること。


Wikipediaでは例として次のようなものが挙げられている。

  • 白黒テレビ(旧)でカラー放送(新)が受信できる。
  • ext2(旧)に対応したシステムでext3(新)をext2としてマウントできる。
  • 古いブラウザ(旧)で新しいHTML(新)を読み込むことができる(未知のタグは無視するというルールがあるため)。

後方互換

古いシステムの規格を、新しいシステムが扱えること。


Wikipediaでは例として次のようなものが挙げられている。

要するに新バージョンは旧バージョンの規格も扱えるよってことなんだけど、新しい製品は機能的にも上位な場合が多いから、実際は上位互換でもあるわけだね。

前方・後方と上位・下位の関係

前方互換後方互換というのは時系列で見たときの互換性のことで、主に新バージョンとかの話。
WindowsでいうとXPとVistaみたいな感じ。

上位互換と下位互換というのは機能やグレードで見たときの互換性のことで、ハイエンド版と廉価版とかの話。
WindowsでいうとProfessional版とHome版みたいな感じ。


というわけで、まとめてみたけど誤用されているケースが多い以上、文脈から判断するしかないのが実情だったりする。
逆に言うと自分が使うときは、何がどう互換性を持っているのか具体的に説明したほうがよい。