トピックス
ゲームプログラマーの必須知識 デバイスごとに違う開発言語の基礎
ゲームプログラマーの基礎「開発言語」とは?
開発言語は「プログラミング言語」ともいいます。かんたんに言ってしまえば、人間が機器(デバイス)に命令するための記号の集まり(=文章みたいなもの)のことです。
機器(デバイス)は、0と1の羅列である「機械語」(オブジェクトコード)を理解して作動します。
しかし、0と1としか記されていない機械語を、人間が直接理解するのは不可能です。
そこで人間は、機械語を人間が理解できる言語に翻訳してデバイスに命令する方法を開発しました。
その「機械語を人間が理解できるように翻訳(開発)した言語」を、プログラミング言語(開発言語)といいます。
ゲーム開発の前に開発言語への理解を深めよう
まず、デバイスを動かすために、0と1の羅列から成る「機械語」が開発されました。
その後、この機械語を人間が理解できるように翻訳したプログラミング言語が開発されました。「アセンブリ言語」です。
アセンブリ言語は、分類的には「低水準言語」とされています。水準が低いということではなく、「人間の言語よりも機械語に近い」という意味です。アセンブリ言語は、デバイスに複雑な動きを命令したい場合に使われます。
ゲームプログラマーを助けてくれる開発言語「高水準言語」
しかし、このアセンブリ言語には欠点があります。アセンブリ言語は、人間の言語よりも機械語に近い(低水準言語である)ことは、先ほど説明したとおりです。ということは、アセンブリ言語は、多くの人にとっては理解しにくい言語なのです。
そこで、アセンブリ言語が開発された後、さらに人間にとってわかりやすい「高水準言語」が開発されました。「機械語よりも人間の言語に近い」という意味です。ここで言う「人間の言語」とは、主に英語や数字のことです。
人間の言語に近いプログラミング言語である高水準言語には、コンパイラ型言語と、インタープリタ型言語があります。
ゲーム開発に必須の開発言語 コンパイラ型言語とは?
コンパイラ型言語は、人間が書いたプログラム(ソースコード)を一括して、デバイスが読める機械語に変換する方式です。
このような変換を「コンパイルする」というので、コンパイラ言語とよばれています。
具体的には、コンパイラ型言語の代表的なものとしては、C++、Java、などの言語が該当します。
ゲーム開発に必須の開発言語 インタープリタ型言語とは?
一方、インタープリタ型言語は、人間がソースコードを書きながらでも、逐次、機械語に翻訳して翻訳する方式です(インタープリタとは、「通訳者・仲介者」という意味です)。プログラミング言語には数多くの種類があり、デバイスによって使われるプログラミング言語が異なります。インタープリタ型言語の代表的なものとしては、JavaScript、PHPがあります。
いかがでしたでしょうか? どの言語も実際に取り組んでみると個性的な違いがあって楽しいですよ。次回以降は、それぞれのプログラミング言語について詳しく見ていくことにしましょう。
【無料 資料請求】最短2日でお届け!まずはパンフレットを取り寄せよう!