Sobes.tech
Junior

Tərcüməçi nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Tərcüməçi, bir proqramlaşdırma dilində (mənbə dili) yazılmış proqramı başqa bir dildə (hədəf dil) ekvivalent proqram halına gətirən proqram və ya cihazdır.

Əsas tərcüməçi növləri:

  • Kompilyator: Bütün mənbə kodunu bir keçiddə maşın və ya aralıq koduna çevirir.
    • Nümunələr: GCC, Clang, Javac.
    • Üstünlüklər: Nəticə kodunun icra sürətini artırır.
    • Mənfi cəhətləri: İcra etməzdən əvvəl açıq bir kompilyasiya mərhələsi tələb edir.
  • İnterpretator: Mənbə kodunu sətir-sətir və ya bloklar şəklində icra edir, bütün kodu əvvəlcədən kompilyasiya etmədən.
    • Nümunələr: Python, Ruby, JavaScript (tez-tez JIT-kompilyasiya istifadə olunur, amma əsas model interpretasiyadır).
    • Üstünlüklər: sürətli inkişaf dövrü (dəyişiklik-icra).
    • Mənfi cəhətləri: ümumiyyətlə, kompilyasiya olunmuş koddan daha yavaşdır, səhvlər yalnız icra zamanı aşkarlanır.

Tərcümə prosesi adətən bir neçə mərhələdən ibarətdir:

  1. Leksik analiz (tarama): Mənbə kodunu tokenlərə (lexemlərə) ayırır.
  2. Sintaktik analiz (parsing): Tokenlərdən ağac strukturu (sintaktik ağac) qurur, dilin qrammatikasına uyğunluğu yoxlayır.
  3. Semantik analiz: Kodun məntiqiliyini yoxlayır (məlumat tipləri, dəyişən elanları və s.).
  4. Aralıq kodun yaradılması: Aralıq ifadədə kod yaradır.
  5. Kodun optimallaşdırılması: Aralıq və ya yekun kodu yaxşılaşdırır, performansı artırır.
  6. Hədəf kodun yaradılması: Aralıq kodu hədəf dilinə (məsələn, maşın kodu) tərcümə edir.

QA kontekstində, tərcüməçilərin necə işlədiyini anlamaq vacibdir:

  • Proqramın davranışını analiz etmək və kompilyasiya və ya interpretasiya ilə əlaqəli səhvləri aşkar etmək.
  • İnkişaf alətlərinin testində tərcüməçinin özünü test etmək.
  • Fərqli platformalarda və müxtəlif tərcüməçilərlə işləyən proqramların performans və davranış fərqlərini anlamaq.