本記事では、プログラミング初心者向けに向けて「インタプリタとは何か」について、分かりやすく解説いたします!
なお、本記事を執筆したのは、プログラミングスクール「アキバ・テックドリーム・アカデミー」(以下、テクドリ)の運営企業であるメディアファイブ株式会社(以下、メディアファイブ)に所属している現役のITエンジニア職の社員です。
インタプリタとは
インタプリタ(interpreter)とは、ソースコードを1行ずつ読み込みながらプログラミング言語から機械語へと変換し、1行ずつ処理を実行するプログラムのことです。
インタプリタ言語
インタプリタに対応するプログラミング言語を「インタプリタ言語」と呼びます。
インタプリタ言語の代表例として、下記が挙げられます。
- JavaScript
- Python
- PHP
- Ruby
インタプリタとコンパイラ
コンパイラとは、ソースコードをすべて一括でプログラミング言語から機械語へと変換したのち、処理を実行するプログラムのことです。
インタプリタとコンパイラでは、変換と実行のタイミングが異なる点に注意が必要です。
インタプリタは、ソースコードを随時翻訳することから「通訳者」と例えられるのに対し、コンパイラは、ソースコードを一括翻訳することから「翻訳者」と例えられています。
インタプリタのメリット・デメリット
インタプリタのメリット・デメリットとして、それぞれ下記が挙げられます。
インタプリタのメリット
実行にかかる手間が少ない
インタプリタは、プログラムの実行にあたって事前のコンパイルが不要なため、コーディング後すぐに動作確認を行うことができます。
デバックが容易
インタプリタは、ソースコードを1行ずつ変換し処理を実行していくため、プログラムが未完成の状態であっても、実行結果を確認することができます。
また、不具合が発生した場合、その時点で処理が止まることで原因が特定しやすくなるため、速やかな修正対応を行うことができます。
インタプリタのデメリット
プログラムの実行速度が遅い
インタプリタは、ソースコードを変換しながら処理を実行するため、コンパイラと比較すると実行速度が劣ります。
セキュリティリスクの高まり
プログラムを実行する際、コンパイラは、コンパイル済みの実行ファイルが必要であるのに対し、インタプリタは、ソースコードそのものが必要となるため、ソースコードが漏洩するリスクが高くなります。
まとめ

インタプリタとは、ソースコードを1行ずつ読み込みながらプログラミング言語から機械語へと変換し、1行ずつ処理を実行するプログラムのことです。
インタプリタに対応するプログラミング言語を「インタプリタ言語」と呼び、その代表例としてJavaScript、Python、PHP、Rubyなどがあります。
インタプリタに対して、ソースコードをすべて一括でプログラミング言語から機械語へと変換したのち、処理を実行するコンパイラがあります。
インタプリタには、実行にかかる手間が少なく、デバックが容易といったメリットがある一方、プログラムの実行速度が遅く、セキュリティリスクが高まる恐れがあるといったデメリットがあります。
インタプリタの特徴を理解して、目的や用途に応じた言語選択に役立てましょう。
無料のプログラミングスクール「テクドリ」の卒業生のインタビュー動画を、インスタグラムほか公式SNSにて公開中!