Interpreter

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Co to jest interpreter?

Interpreter to program, który uruchamia kod źródłowy bez wcześniejszego tłumaczenia całego programu do postaci pliku wykonywalnego. Jego główne zadanie polega na wykonywaniu programu instrukcja po instrukcji.

Oznacza to, że interpreter odczytuje kolejne polecenie, analizuje je i od razu wykonuje. Jeśli napotka błąd, zwykle zatrzymuje działanie w miejscu jego wystąpienia.

Zadania interpretera

Do podstawowych zadań interpretera należą:

  • odczytywanie kodu źródłowego lub skryptu,
  • analizowanie kolejnych instrukcji,
  • wykonywanie instrukcji po kolei,
  • zgłaszanie błędów w trakcie działania programu.

Interpreter a kompilator

Interpreter różni się od kompilatora sposobem uruchamiania programu.

Interpreter:
- wykonuje kod instrukcja po instrukcji,
- nie tworzy samodzielnego pliku wykonywalnego,
- często wykrywa błędy dopiero podczas działania programu.

Kompilator:
- tłumaczy cały program przed uruchomieniem,
- może wygenerować kod maszynowy lub pośredni,
- zwykle sprawdza składnię całego programu przed wykonaniem.

Przykłady języków interpretowanych

Do języków często kojarzonych z interpretacją należą:

  • Python,
  • JavaScript,
  • PHP,
  • Ruby.

W praktyce wiele współczesnych języków używa rozwiązań mieszanych, np. interpretera, kompilacji do kodu pośredniego lub kompilacji JIT.

Przykład

print("Start")
x = 10
print(x)

Interpreter Pythona wykona najpierw pierwszą instrukcję, potem przypisanie wartości do zmiennej, a następnie kolejne polecenie print().

Najważniejsze na egzamin

Jeżeli pytanie dotyczy zadania interpretera, poprawna odpowiedź najczęściej brzmi: wykonuje skrypt lub program instrukcja po instrukcji.