プラットホームとは
プラットホーム(platform)とは、基盤や土台、環境を意味する英単語。官公庁の施策における環境、基盤、ソフトウェアやシステムにおける動作環境などのように、作業をするための足場の意味で用いられている言葉です。
ITの分野では、主にシステムを動作させるための土台となる環境(オペレーティングシステム (OS) やハードウェア)で使われます。
※オペレーティングシステムとは、コンピュータを動かす為のソフトウェア。
スポンサーリンク
プラットフォームの具体例
例えば、以下の図のようにWindows(OS)上で動作する「Aソフトウェア」と「Bソフトウェア」があるとします。
「Aソフトウェア」はWindowsのオペレーティングシステム (OS)上で動作し、「Bソフトウェア」は「Aソフトウェア」上で動作します。
※BソフトウェアはAソフトウェアがないと動作しない。
この時、「Bソフトウェア」のプラットフォームは、「Aソフトウェア」と「Aソフトウェア」が動作する環境です。プラットフォームはシステムを動作させるための環境(土台)を指す言葉なので、「Bソフトウェア」を動かすのに必要な「Aソフトウェア」と「Aソフトウェア」が動作する環境がプラットフォームです。
次に「Aソフトウェア」のプラットフォームは「Windows」です。「Aソフトウェア」はWindowsのオペレーティングシステム (OS)上で動作しているので、「Windows」がプラットフォームです。
プラットフォーム依存
一般的なソフトウェアは、特定のプラットフォーム(Windows、macOS、Linuxのオペレーティングシステムやハードウェア)向けに作られることが多く、その環境のみで動作します。
例えば、Windows向けのアプリケーションをLinux上で動作させることはできないなど。プラットフォームに依存しているソフトウェアが一般的です。
しかし中にはプラットフォームに依存していないソフトウェアも存在します。このようにプラットフォームに依存していない(プラットフォーム非依存)ソフトウェアのことを「クロスプラットフォーム」や「マルチプラットフォーム」といいます。
プラットフォーム非依存(例:Java仮想マシン)
プラットフォームに依存しないソフトウェア(クロスプラットフォーム)で有名なのが、Java仮想マシン(Java virtual machine)です。Java VMやJVMとも呼ばれます。
プログラミング言語で有名なJavaは「Java仮想マシン」と呼ばれるJavaアプリケーションが動作する環境を使用します。そのため、Javaアプリケーションは「Java仮想マシン」さえあれば、Javaプログラムを実行することができます。
そして「Java仮想マシン」は、さまざまなプラットフォーム(Windows、macOS、Linux)で動作します。
他にも、Microsoft社が提供する開発環境である「Xamarin」(iOSやAndroid、Mac向けのソフトウェアを開発が可能)や、Google社が提供する開発環境「Flutter」(AndroidとiOS向けのアプリを、Google社が開発したDartという言語で開発が可能)などもプラットフォームに依存しない「クロスプラットフォーム」です。