「プログラミング/共通知識」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
タグ: 2017年版ソースエディター
129 行
 
=== インタプリタ ===
# ソースコードを実行の(あるいはソースコードから変換しびに(機械語に中間表現翻訳を読み込み解釈しながら実行するプログラムを実行していくという方法のこと。
# ソースコードを翻訳する部分。
 
'''スクリプト言語'''と呼ばれる言語は、おおよそむねインタプリタ方式を採用しています。インタプリタ方式を採用しているプログラミング言語は、[[JavaScript]][[Python]]などがある。手軽に書いてすぐ実行できるというメリットがある反面、プログラムの実行時に毎回解釈をする必要があるのでプログラムの実行速度はコンパイル方式のプログラミング言語に実行速度が劣る場合がある。インタプリタであるプログラム言語ではソースコードを直接実行するので、プログラムのコードを書き換えると、実行結果もそれに応じて変化します。
手軽に書いてすぐ実行できるというメリットがある反面、プログラムの実行時に毎回解釈をする必要があるのでプログラムの実行速度はコンパイル方式のプログラミング言語に実行速度が劣る場合があります<ref>インタープリタは実行時に「どの部分が多く実行されたか?」「分岐命令でどちらに多く分岐したか?」などの実行時統計情報を容易に手に入れることができ、これらに基づき[[W:実行時コンパイラ|実行時コンパイラ]](JIT)による最適化が可能となりる。よって、一概にインタプリタ方式がコンパイル方式より実行速度が劣るとは言えない。</ref>。
インタプリタ方式を採用した言語の処理系は、ソースコードを直接実行するのでプログラムを書き換えると、即時に実行結果もそれに応じて変化します。
 
=== コンパイル ===