用語集に戻る
プログラミング基礎中級

コンパイル

こんぱいる

一言で言うと

人間が書いたプログラムのコードを、コンピュータが理解できる形式に変換すること。

もう少し詳しく

一言で言うと

人間が書いたプログラムのコードを、コンピュータが理解できる形式に変換すること。

もう少し詳しく

コンパイルは、プログラムの「翻訳」作業です。私たちが日本語で書いたコードを、コンピュータや実行環境が扱える形式に変換する工程を指します。機械語への変換だけでなく、TypeScript→JavaScriptのようにソースコードを別の形式に変換することもコンパイルと呼びます。

海外旅行に例えると、日本語の旅行ガイドブックを英語に翻訳するようなものです。翻訳(コンパイル)が済んでいれば、現地ですぐに使えます。翻訳に時間がかかりますが、一度訳したものは何度でも素早く使えるのがメリットです。

一方、翻訳せずに同時通訳のようにリアルタイムで変換しながら実行する方法もあり、これを「インタープリタ」と呼びます。PythonやJavaScriptはインタープリタ方式が多く、C言語やGoなどは実行前に機械語へコンパイルする方式です。JavaはソースをバイトコードにコンパイルしてからJVM上で実行するため、両者の中間的なハイブリッド方式に位置づけられます。

実務でどう使うか

  • マーケティング: 「ビルドに時間がかかる」とエンジニアが言うとき、このコンパイル作業が含まれていることがあります

  • デザイン: TypeScriptのコードがJavaScriptにコンパイルされる、SASSがCSSにコンパイルされるなど、デザイン周りでもコンパイルは身近な概念です

  • PM: 「コンパイルエラー」は開発中に見つかるバグであり、リリース前に修正できるので安心です。逆に「ランタイムエラー」は本番で起きるため要注意です
  • コードで見てみよう

    # TypeScript → JavaScriptへのコンパイル例
    # 人間が書いたTypeScript
    # const greeting: string = "こんにちは";

    # コンパイルコマンド
    npx tsc greeting.ts

    # → コンピュータが実行できるJavaScriptが生成される
    # var greeting = "こんにちは";

    関連する用語

    この用語を学べるコース

    この用語を実際に使ってみよう

    チョットデキルなら、5分のレッスンで実際にコードを書いて学べます。

    コース一覧を見る