インタプリタ言語とはプログラミング言語の処理形式を2つに区分したうちの一つです。もう一方の形式にコンパイラ言語というものが存在します。インタプリタという言葉に馴染みに無い方は多いのではないでしょうか。実はPHP、Ruby、Pythonなど数多くの人気言語がインタプリタ形式を採用しております。この記事ではインタプリタ言語のメリット・デメリット、種類などを簡単に解説させていただきます。
インタプリタ言語とは、人間が書いたプログラム(ソースコード)をコンピュータが実行する際に1行ずつコンピュータが読み取りやすいように機械語に翻訳していきながら、そのプログラムを実行していく方式を持つプログラミング言語です。インタプリタという言葉は英語の『Interpreter』を表し、日本語訳すると『通訳』を意味します。
インタプリタ言語の大きな特徴として『コンパイルが不要』ということが挙げられます。そのためプログラムの確認や修正が容易であるというメリットがあります。一方でコンパイラ言語に比べて『実行速度が遅い』というデメリットがあります。代表的なインタプリタ言語としてPHP、Ruby、Pythonなどが挙げられます。
インタプリタ言語のメリットを見ていきましょう。
インタプリタ言語はコンパイルが不要であることから確認や修正が容易であるというメリットが挙げられます。システム開発の際、コンパイラ言語の場合プログラマーはソースコードの変更を行う度に実行結果の確認を行うためコンパイルを都度行い、実行ファイルを完成させないと対象のプログラムを実行できません。一方でインタプリタ言語の場合ソースコードを適宜機械語へと翻訳してくれているため、そのままソースコードを実行するか中間表現に変換するのみなので確認や修正への手間が軽減されます。
コンパイラ言語のメリット・デメリットや種類を解説している記事はこちら>>
インタプリタ言語のデメリットを見ていきましょう。
インタプリタ言語は実行速度が遅いというデメリットがあります。インタプリタ言語は
コンパイラ言語に比べて実行時の性能が劣ると言われております。その原因としてコードを実行する際に1行ずつコンピュータが読み取りやすいように機械語に翻訳していくということが挙げられます。
一方でインタプリタ言語ではメリットでも挙げた通り、コンパイルを不要とするため『コンパイル時間+実行時間』で考えるとインタプリタ言語の方が優勢となる場合もあります。そのため一概にコンパイラ言語よりも遅いとは言えませんが、実行速度の観点だけで見ると遅い傾向にあります。
代表的なインタプリタ言語を見ていきましょう。
PHPとはラスマス・ラードフ氏によって1995年に開発されたオープンソースのサーバーサイド言語です。動的なWebページを生成することができるプログラミング言語として全世界で親しまれております。PHPというその名称には「Hypertext PreprocessorPHPはHTMLのプリプロセッサである」という意味が込められております。特徴は『動作確認が簡単であること』や『HTMLの中で簡単にコードを動かせる』といったことが挙げられます。Webサービスを開発するプログラミング言語としてPHPは世界的にトップクラスの人気を集めております。
Rubyとはまつもとゆきひろ氏によって1995年に開発されたオープンソースでオブジェクト指向のプログラミング言語です。日本人プログラマーのよって開発された言語として初めて国際電気標準会議(IEC)で国際規格に認証されました。
Rubyの特徴は記述量が少なく、自由度が高い、そして何より『書くことが楽しい』と多くのプログラマーの方が口を揃えております。RubyはWebアプリケーションの開発に最も向いており代表的な開発事例としてGunosy、食べログ、価格.comなどが挙げられます。
Pythonとはグイド・ヴァンロッサム氏によって1991年に開発された汎用的に使用されるプログラミング言語です。サーバサイド言語としてWebアプリケーションやデスクトップアプリケーションの開発に使われるだけでなく、組み込み開発、自動処理、統計・解析、機械学習など幅広い領域に対応出来るプログラミング言語として親しまれております。特徴として『コードがシンプルで覚えやすい』『少ない記述で多くの処理が可能』などが挙げられます。Pythonは人工知能(AI)やビッグデータなどトレンドの分野にて重宝されております。このように幅広い分野にて扱われる汎用的なプログラミング言語として高い人気を集めております。
Perlとはラリー・ウォール氏によって1987年に開発された主にサーバサイド言語として使用されるプログラミング言語です。Perlという名称には「Practical Extraction and Report Language」翻訳すると”実用的な抽出とレポート言語”という意味が込められております。特徴として『歴史あるスクリプト言語』『テキスト処理が優れている』などが挙げられます。JavaやPHPなど数々の人気のスクリプト言語が登場しておりますがPerlはこの中でも長い歴史を持ちます。Perlは機能性、拡張性、記述など総合な観点で高い評価をされておりバランスの取れた言語として人気を集めております。
JavaScriptとはネットスケープコミュニケーションズ社によって1995年に誕生したプログラミング言語の一種でその中でもオブジェクト指向スクリプト言語に区分されます。主な目的として動的な機能をWebページに生成するためのプログラミング言語として開発されました。Webサイト、Webアプリ、ゲームなど様々な用途に活用できるため注目を集めております。名称にJavaが含まれるためJavaの仲間と誤解を生むこともありますがJavaScriptは全く異なるプログラム言語です。開発当時サン・マイクロシステムズ社が開発したプログラミング言語『Java』が大きな注目を集めていたことや同社との業務提携を行った背景もありJavaにちなんだ名称が付けられました。JavaScriptフレームワークの代表的な種類としてjQuery、AngularJS、Vue.jsなどが挙げられます。
インタプリタ言語についてメリット・デメリット、それぞれの特徴を簡単に解説させて頂きました。インタプリタ言語を一言で表すと『プログラムを1行ずつコンピュータが読み取りやすいように機械語に翻訳しながら、プログラムを実行していく言語です』特徴として『コンパイルが不要』というメリットがあり、『実行速度が遅い』というデメリットがあります。PHP、Ruby、Pythonなど人気をあつめる数々のプログラミング言語で採用されている形式なのでこちらに記載されている最低限の内容は理解をしておくようにしましょう。