クロスプラットフォーム 【cross-platform】
概要
クロスプラットフォーム(cross-platform)とは、あるコンピュータプログラム(ソフトウェア)を、複数の異なる仕様の機種やオペレーティングシステム(OS)で同じように動作させられること。また、異なる機種で動作する同じソフトウェア間で何らかの連携が可能なこと。ソフトウェアは通常、特定の機種のコンピュータやオペレーティングシステム(OS)上でのみ動作し、他の環境上では動作しないが、クロスプラットフォーム対応のソフトウェアは複数の異なるプラットフォームで同じように動作させることができる。この意味では「マルチプラットフォーム」(multi-platform)という用語も用いられる。
主な手法は二つあり、一つは同じソースコードなどを元に開発時に「Windows用」「macOS用」のようにそれぞれの環境に対応するパッケージを作成し、それぞれの環境向けに別々に提供する方式である。デスクトップアプリケーションなどに多い。ゲームソフトなどの場合はプログラムをそれぞれの環境向けに別々に開発する場合もある。
もう一つは、様々な環境に実行環境を持つようなプログラミング言語を選択し、同じプログラムを提供する方式である。例えば、Java言語で開発されたソフトウェアはJVM(Java仮想マシン)が提供されている様々な環境で同じように動作する。実行時にプログラムをプラットフォーム固有の形式に変換するスクリプト言語(JavaScriptやPythonなど)も、同じプログラムが様々な環境で動作する。
プラットフォームをまたいだ連携
「クロスプラットフォーム」という用語は、複数プラットフォームへの同時対応という意味の他に、様々な環境で動作する同じソフトウェア間で何らかの通信や連携が可能であるという意味で用いられることがある。ビデオゲーム業界でよく聞かれる用例である。
例えば、同じタイトルのPlayStation 5(PS5)版、Nintendo Switch版、PC(Windows)版が提供され、PS5版プレイヤーとSwitch版プレイヤーの間で通信対戦や協力プレイしたり(クロスプレイ)、PC版とSwitch版でセーブデータを共有(クロスセーブ)できるといった機能が実装されている場合に、これをクロスプラットフォームという。