スポンサーリンク

【応用情報技術者試験】コンパイラとインタプリタの違いをわかりやすく解説

まず結論

項目コンパイラインタプリタ
翻訳方法一括変換1行ずつ変換
実行速度高速比較的遅い
エラー発見実行前にまとめて確認実行中に発見
代表言語C言語、C++Python、JavaScript

コンパイラとは?

特徴

ソースコード全体をまとめて機械語へ変換してから実行する方式。

流れ:

ソースコード

コンパイル

実行ファイル生成

実行


イメージ

日本語の本を「全部まとめて英訳してから読む」感じ。


メリット

  • 実行速度が速い
  • 一度コンパイルすれば繰り返し高速実行可能

デメリット

  • 修正のたび再コンパイルが必要
  • コンパイルに時間がかかる場合がある

ポイント

全体をまとめて変換

コンパイラ = ソースコード全体を一括変換


インタプリタとは?

特徴

ソースコードを1行ずつ翻訳しながら実行する方式。

流れ:

1行読む

翻訳

実行

次の行へ


イメージ

日本語を「同時通訳しながら会話する」感じ。


メリット

  • すぐ実行できる
  • 修正確認がしやすい
  • 開発効率が高い

デメリット

  • 実行速度は遅め
  • 毎回翻訳するため負荷がかかる

ポイント

逐次変換しながら実行

インタプリタ = 1行ずつ翻訳しながら実行


よく出る代表例

コンパイラ型

  • C言語
  • C++
  • Go
  • Rust

インタプリタ型

  • Python
  • JavaScript
  • Ruby
  • PHP

Javaはどっち?

試験でかなり狙われるポイント。

Javaは、

Javaソース

コンパイル

バイトコード

JVMが実行

という流れ。

つまり、

  • コンパイラ要素
  • インタプリタ要素

両方を持つ。


よくある引っかけ

「インタプリタは実行ファイルを作る?」

→ 基本作らない。


「コンパイラは実行前にエラー確認できる?」

→ できる。


「インタプリタはデバッグしやすい?」

→ しやすい。

1行ずつ確認できるため。


試験での覚え方

コンパイラ

「先に全部翻訳」


インタプリタ

「その場で同時通訳」


試験直前まとめ

  • コンパイラ = 一括変換
  • インタプリタ = 逐次変換
  • コンパイラは高速
  • インタプリタは開発しやすい
  • Javaは中間コード方式
  • Pythonはインタプリタ型

この辺りは基本情報・応用情報どちらでも頻出なので、確実に押さえておきましょう。


知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…

まずは無料でキャリア相談

コメント