インタプリタ言語とは
人が書いたプログラムを機械語に一行ずつ翻訳して実行する言語
事前のコンパイル(人が書いたプログラムを機械が認識できる形式にすること)が不要
例)Python、JavaScript、Ruby、PHPはインタプリタ言語
インタプリタ言語以外の言語で、「コンパイラ言語」がある
コンパイラ言語
ソースコードを事前に機械語に変換してから実行する言語
コンパイルが必要
インタプリタ言語に比べると実行速度が速い(最適化されたバイナリ(プログラムを機械語に変換したファイル)を直接実行するから)
例)C、C++、Go、Rustはコンパイラ言語
※Javaはどっち?→半コンパイル・半インタプリタのハイブリッド
・コンパイル:ソースコード(.java)をバイトコード(仮想マシンが理解できる中間的なコード)(.class)に変換
・実行:JVM(Java仮想マシン)がバイトコードを解釈して実行
JVMがインタプリタ的な動作をする+JITコンパイル(実行中に一部機械語に変換)も使われる