「クロスプラットフォーム」の版間の差分

削除された内容 追加された内容
編集の要約なし
編集の要約なし
1行目:
'''クロスプラットフォーム'''(({{lang-en-short|cross-platform)}})とは、異なる[[プラットフォーム (コンピューティング)|プラットフォーム]](例えば[[PC/AT互換機]]と{{lang|en|[[Macintosh]]}}、あるいは{{lang|en|[[Microsoft Windows|Windows]]}}{{lang|en|[[OS X|Mac OS X]]}}{{lang|en|[[FreeBSD]]}}{{lang|en|[[Linux]]}}などのように、仕様が全く異なる機械([[ハードウェア]])または[[オペレーティングシステム|OS]])上で、同じ仕様のものを動かすことが出来る[[プログラム (コンピュータ)|プログラム]]([[ソフトウェア]])のことを言う。同様の呼称に'''マルチプラットフォーム'''(<ref>{{lang-en-short|multi-platform)}}</ref>がある。
{{出典の明記|date=2013年5月}}
'''クロスプラットフォーム'''(cross-platform)とは、異なる[[プラットフォーム (コンピューティング)|プラットフォーム]](例えば[[PC/AT互換機]]と[[Macintosh]]、あるいは[[Microsoft Windows|Windows]]・[[OS X|Mac OS X]]・[[FreeBSD]]・[[Linux]]などのように、仕様が全く異なる機械([[ハードウェア]])または[[オペレーティングシステム|OS]])上で、同じ仕様のものを動かすことが出来る[[プログラム (コンピュータ)|プログラム]]([[ソフトウェア]])のことを言う。同様の呼称に'''マルチプラットフォーム'''(multi-platform)がある。
 
また、[[家庭用ゲーム]]において複数のハードで同じ作品が発売されることを指して「マルチプラットフォーム」と呼称する場合がある。本項ではこのケースについても[[#家庭用ゲーム機におけるクロスプラットフォーム|後述]]する。
 
== クロスプラットフォームアプリケーションプログラムの例 ==
具体的には次のようなものがある。
* {{lang|en|[[Emacs]]}}
* {{lang|en|[[Javaプラットフォーム|Java]]}} アプリケーション([[サン・マイクロシステムズ]])
* [[Mozilla Firefox{{lang|Firefox]] / [[Mozilla Thunderbirden|Thunderbird]] / [[Mozilla]] など [[XUL]]}} ネイティブアプリケーション([[Mozilla Foundation]])
* [[Opera]] など {{lang|en|[[Presto]]}} [[HTMLレンダリングエンジン|エンジン]]使用アプリケーション ([[オペラ・ソフトウェア|Opera Software]])
 
クロスプラットフォームなプログラムは、表面上はどのOSオペレーティングシステム上でも全くほぼ同じように動作するが、場合によってはOSオペレーティングシステム側とのやり取りを行う部分は、それぞれのOSの機能に応じて最適化がなされていて、一方のOSオペレーティングシステムで動いていたものを、そのまま他のOSオペレーティングシステムに持っていっても動作しない場合がある。そのため一部のプログラムでは、各OSオペレーティングシステム専用のコードをどのOSオペレーティングシステム向けのパッケージにも含ませていることがある。また、保存された設定などの一部データは、他のOSオペレーティングシステムに移植しても正常に動作することがある<!-- 公的なドキュメントは確認できませんが、具体例としてFirefoxのデータをMac OS XからWindowsに移植して正常に動作したなどという事例がもじら組で確認されています。 -->。例えば、{{lang|en|Mozilla Thunderbird}} のメールデータや設定などのプロファイルを別のプラットフォームへ持っていけば、新たなプラットフォーム上で引き続き利用できる。(<ref>参考[http://plusd.itmedia.co.jp/pcuser/articles/0712/14/news069.html]</ref>。
 
{{lang|en|Java}} の実行環境は {{lang|en|Windows}} {{lang|en|Mac OS X}}{{lang|en|Linux}} {{lang|en|UNIX}}、[[携帯端末|携帯電話]]などに存在するため、Java バイトコード書かれたアプリケーションはこれらのプラットフォーム上で同じように利用できる。
 
Mozilla Foundationモジラ・ファウンデーションが[[オープンソース]]で開発しているインターネットアプリケーション群も Windows / Mac OS X / Linux / [[OS/2]] / [[Solaris]]などにリリ複数のオペレティングシテムに提供されている。{{lang|en|[[Mozilla]]}} は単なるブラウザやメールクライアントなどのアプリケーションという位置だけではなく、それらアプリケーション上で動作する共通のプログラムを扱える。例としては {{lang|en|Firefox}} の[[拡張機能 (Mozilla)|拡張機能(エクステンション、アドオン)]]にFTPクライアントの機能を持たせる {{lang|en|FireFTP}} というものがある。これを用いれば {{lang|en|Firefox}} から[[File Transfer Protocol|FTP]]を利用できる。つまり、{{lang|en|Firefox}} がインストールできる異なったOSで、同様の機能のソフトを利用できるということである。
 
{{lang|en|Opera}} のケースでは、OSオペレーティングシステム環境に依存せず異なる環境へ移植可能で軽量なプログラムコードを用いているため、デスクトップ環境のみならず、容量の少ない携帯電話や家庭用[[ゲーム機]]にもブラウザ機能を移植するケースが存在する。
つまり、Firefoxがインストールできる異なったOSで、同様の機能のソフトを利用できるということである。
 
さらに、[[ダイナミックHTML]]を活用した[[リッチインターネットアプリケーション]]が既に広く利用されており、[[World Wide Web]]と[[ウェブブラウザ]]も一種のクロスプラットフォーム環境と言えである。
Operaのケースでは、OS環境に依存せず異なる環境へ移植可能で軽量なプログラムコードを用いているため、デスクトップ環境のみならず、容量の少ない携帯電話や家庭用[[ゲーム機]]にもブラウザ機能を移植するケースが存在する。
 
== 家庭用ゲーム機におけるクロスプラットフォーム ==
さらに、[[ダイナミックHTML]]を活用した[[リッチインターネットアプリケーション]]が既に広く利用されており、[[World Wide Web]]と[[ウェブブラウザ]]も一種のクロスプラットフォーム環境と言える。
そのため、家庭用ゲーム機におけるマルチプラットフォームという語は汎用コンピューターにおける意味とは異なり、ある一つのタイトルのソフトウェアを各ハードウェア向けにそれぞれ別々にすることを意味する場合がほとんどである。家庭用ゲーム機([[コンシューマーゲーム]])の場合は'''マルチプラットフォーム'''という語の方が主に用いられる。
 
ゲーム機は、インターフェースや表示手段などの動作環境がハードに強く依存しているため、[[ゲーム機|同世代のハード]]であれば複数のハード向けに同時進行でソフトの開発を行うことはできるが、ハードウェア性能が著しく異なる場合(たとえば[[PlayStation 2|PS2]]と[[PlayStation 3|PS3]]に同じタイトルのソフトを開発する場合)、ゲームデザインのレベルから再構成する場合もあり、中には同タイトルといえどもじ作品でありながら、テーマや世界観以外は全く異なるゲームとして発売されているものも存在する。
== 家庭用ゲーム機におけるクロスプラットフォーム ==
{{言葉を濁さない|section=1|date=2013年8月}}
クロスプラットフォームという語は、家庭用ゲーム([[コンシューマーゲーム]])に関する文脈においても使用されるが、その場合は'''マルチプラットフォーム'''の方が主に用いられる。
 
==脚注==
各種ゲーム機にはそれぞれ異なるOSが搭載されていることが常であるため、異なるいくつかのハードウェア上で同一のソフトウェアを動作させる例は、[[PlayStation (ゲーム機)|プレイステーション]]や[[ゲームボーイ]]、[[Wii]]等における[[上位互換|上位互換性]]を除いては、ほとんど見られない。
<references />
 
== 関連項目 ==
そのため、家庭用ゲーム機におけるマルチプラットフォームという語はコンピューターにおける意味とは異なり、ある一つのタイトルのソフトを各ハード向けにそれぞれ別々に発売することを意味する場合がほとんどである。
* [[プラットフォーム (コンピューティング)|プラットフォーム]]
 
ゲーム機は、インターフェースや表示手段などの動作環境がハードに強く依存しているため、[[ゲーム機|同世代のハード]]であれば複数のハード向けに同時進行でソフトの開発を行うことはできるが、ハード性能が著しく異なる場合(たとえば[[PlayStation 2|PS2]]と[[PlayStation 3|PS3]]に同じタイトルのソフトを開発する場合)、ゲームデザインのレベルから再構成する場合もあり、中には同タイトルといえども、テーマや世界観以外は全く異なるゲームとして発売されているものも存在する。
 
ゆえに、コンピューターにおけるクロスプラットフォームという語が持つ「汎用性」のような印象は、ゲームにおけるクロスプラットフォームでは持たれないのが一般的である。
 
[[PlayStation (ゲーム機)|プレイステーション]]と[[セガサターン]]、[[PlayStation 3|プレイステーション3]]と[[Xbox 360]]というように[[任天堂]]ハードからクロスプラットフォームを回避するケースが多い。これは、前者はメディアの違い(CD-ROMとカートリッジ)、後者はインターフェイスの違いなどが原因と考えられる(光ディスクを使用しており、入力形式にもあまり差が見られなかった[[PlayStation 2|プレイステーション2]]と[[ニンテンドーゲームキューブ]]のマルチプラットフォームは比較的多かった)。
 
Xbox 360との組み合わせが多い理由は、Xbox 360のシステムが[[マイクロソフト]]が開発している[[Microsoft Windows|Windows]]のノウハウを利用しており、動作や[[互換性]]等がWindows搭載の一般的なコンピュータに近いことや、開発するためのPC自体がWindows搭載のものであることが多く、[[プログラミング (コンピュータ)|プログラミング]]や[[グラフィック]]等に差異がそれほどないことからゲームソフト開発側にとって負担が少ないことが挙げられる。
 
== 関連項目 ==
* [[プラットフォーム (コンピューティング)|プラットフォーム]]
 
{{DEFAULTSORT:くろすふらつとふおおむ}}