この記事では、「プラットフォーム」と「フレームワーク」の違いを分かりやすく説明していきます。
「プラットフォーム」とは?
「プラットフォーム」は、ソフトウェアが動作する基盤となるものは何かになり、ソフトウェアの動作環境のことです。
例えば、ソフトウェアが「Windows」でしか動作しないのであれば、「プラットフォーム」は「Windows」になりますが、ソフトウェア側が他にも対応している「プラットフォーム」がある場合、「Windows」以外に「iPhone」だったり、「android」などのスマートフォンのOSでもソフトウェアが動作すれば、それを「プラットフォーム」と呼び、動作環境であるとします。
「フレームワーク」とは?
「フレームワーク」はそのアプリやソフトウェアの基本構成のことを指し、言ってしまえば、プログラミング言語そのものです。
通常、プログラムには多数の言語があり、対応端末ごとにそれぞれ動作言語として機能します。
この時、言語プログラムには柔軟性があり、他の周辺機器でも動作可能としているなどの柔軟性があります。
ですが、完全にソフトウェアの動作を保証するものではないので、「フレームワーク」とは、大きな枠組みではあるが完全に動作を保証するための言語ではないのです。
「プラットフォーム」と「フレームワーク」の違い
「プラットフォーム」は単にそのアプリがきちんと動作する可能性がある周辺機器はどれかを示しており、「フレームワーク」のようにプログラムの基盤のことを指していません。
一方「フレームワーク」は、基盤を指しますので動作においては機器ごとに動作が可能としており、かつ言語プログラミングの拡張により機能が変化しますので両者の違いは、単にアプリの動作環境であるとするか、アプリやソフトウェアの動作プログラムの種類は何かという違いです。
「プラットフォーム」の例文
・『このゲームソフトのプラットフォームはPS4です』
この例は、ゲームソフトの動作環境がPS4であると述べた例です。
「プラットフォーム」は動作環境を指しますので、ゲームのプログラムが動く本体そのものを指します。
「フレームワーク」の例文
・『このゲームのフレームワークは、unityです』
この例は、ゲームを動かすプログラムの基盤がunityだと述べています。
「フレームワーク」とは、プログラミング言語そのものを指しますのでこの例においては、ゲームの言語がunityだと述べているのです。
まとめ
「プラットフォーム」と「フレームワーク」の違いは、ゲームなどで考えると、動作環境が「プラットフォーム」、ゲームを動かすためのプログラム自体を「フレームワーク」と呼びます。
通常、一般のゲームを楽しむ方は、「フレームワーク」についてはあまり気にしておらず、その理由は、「プラットフォーム」の方が気になるため、どのゲーム機でゲームが動作するかということの方が気にあります。
「フレームワーク」はあくまでプログラミング言語がどのようなことができるかに当たるため、これを気にするのはプログラマーやゲーマーという人物になり、ゲーマーは動作環境以外に、どういった細かなことができるかということを気にしますので、「フレームワーク」はよほどのもの好きでない限りあまり気にする必要はありません。