簡単でわかりやすい!コンパイルとビルドの違いとは?翻訳?建設?プログラマが詳しく解説
ライター/woinary
某社で社内向け業務システムの開発、運用を30年近くやっていたシステム屋さん。コンパイルやビルドを1万回以上はやってきた。現在はフリーランス。ガジェットやゲーム、ラノベが大好きなおっさん。
プログラムは部品の集合?コンパイルとビルドとは
パソコンやスマホのアプリはそのコンピューターの言葉で書かれたプログラムです。機械用の言葉なので、人間が普段読み書きしている言葉とはちがいます。では、プログラマはいきなりコンピューターの言葉でプログラムをつくるのでしょうか。大昔はそういう時代もありましたが、現代は多くの場合人間に分かりやすいプログラミング言語というものを使います。
そのプログラミング言語で書いたプログラムを、コンピューターの言葉に直すときに使う用語がコンパイルやビルド。アプリは大きなものではいくつもの部品からできています。その部品をコンピューターの言葉にするのがコンパイルで、できた部品をまとめて1つのアプリにするのがビルドです。分かりにくいと思うので、もう少し詳しく説明していきます。
こちらの記事もおすすめ
5分で分かる!SEとプログラマーの違いとは?年収やスキル・仕事内容も現役エンジニアがわかりやすく解説
コンパイル:1つの部品をコンピューター向けに変換すること
パソコンやスマホで使うアプリにも、大きいものから小さいものまでいろいろあります。大きなものではいくつもの部品からできていることも多いです。そのひとつひとつの部品を、人間が分かりやすいプログラミング言語から機械の言葉に翻訳することを「コンパイル」、実際に翻訳するアプリのことを「コンパイラ」と呼びます。
このコンパイルする前のプログラミング言語で書いたものが「ソースコード」、略してソースです。情報の出所のことを情報ソースとかいう言い方もしますよね。ソースというのは源という意味です。また、コンパイルした結果を「オブジェクトコード」、略してオブジェクトと呼びます。つまりコンパイルとはソースをオブジェクトに変換することです。
こちらの記事もおすすめ
3分で分かる!アプリとブラウザの違いとは?意味や仕様・それぞれのメリットも会社員webライターが詳しくわかりやすく解説
ビルド:いくつかの部品をまとめてひとつのプログラムにまとめること
ソースをコンパイルするとオブジェクトができますが、それだけではまだアプリにはなりません。細かい話は後で説明しますが、コンパイル以外にも作業をした結果、アプリができあがります。このソースからアプリをつくることがビルドです。ビルドとは建設すること。アプリをソースからつくることがビルドになります。その中にコンパイルも含まれているのです。
\次のページで「プログラムは定食メニュー?ご飯と味噌汁とおかずでできている」を解説!/