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:
- Leksik analiz (tarama): Mənbə kodunu tokenlərə (lexemlərə) ayırır.
- Sintaktik analiz (parsing): Tokenlərdən ağac strukturu (sintaktik ağac) qurur, dilin qrammatikasına uyğunluğu yoxlayır.
- Semantik analiz: Kodun məntiqiliyini yoxlayır (məlumat tipləri, dəyişən elanları və s.).
- Aralıq kodun yaradılması: Aralıq ifadədə kod yaradır.
- Kodun optimallaşdırılması: Aralıq və ya yekun kodu yaxşılaşdırır, performansı artırır.
- 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.