Tercüman Nedir: Tanım, Türler ve Farklılıklar

tercüman nedir
temel kaynak

Tercüman, bilgisayarlara kesin dilbilgisi ve sözdizimi ile insan yapımı bir dil olan bir programlama dilinden belirli görevleri gerçekleştirme talimatı veren komutları dönüştüren bir yazılım parçasıdır. Tercümanların avantajları, dezavantajları, türleri ve kullanım örnekleri hakkında ek bilgi için okumaya devam edin.

tercüman nedir

Bir tür bilgisayar programı tercüman olarak bilinen, doğrudan bir programlama veya kodlama dilinde ifade edilen komutları yerine getirir. Makine öğrenimi için bir programda derlemek gerekli değildir. Derlemede sıklıkla kullanılan bir dizi dil için birçok türde yorumlayıcı oluşturulur. Tercüman, üst düzey talimatları çalıştırmadan önce makine koduna çevirmeyen bir yazılım parçasıdır. Programlamada bir programı çalıştırmanın iki yolu vardır. başlangıçta derleme ve ardından yorumlama yoluyla. Bir derleyici kullanmak olağan yöntemdir.

Tercüman, birkaç komutu yerine getirebilen bir programdır. Her komut, programcının değiştirmek istediği verilerin yanı sıra verileri değiştirmek için gereken bilgilerden oluşur. Tercümanlar, farklı etkinlikleri gerçekleştirmek için uyarlanmış çeşitli talimatlara sahiptir. Bellek yönetimi, aritmetik hesaplamalar ve dallanma için en popüler talimatlar desteklenir. Önce bunları öğelere veya makine koduna dönüştürmeden, komut dizili veya programlı talimatları doğrudan gerçekleştirir.

Bir Tercümanın Stratejileri

Üç olası sonuç vardır:

  • Sonucu oluşturmak için doğrudan kaynak kodunu çalıştırın.
  • Kaynak kodunu dönüştürerek oluşturulan ara kodu yürütün.
  • dahili bir derleyici kullanarak önceden derlenmiş kod oluşturmak. Bundan sonra, bu önceden derlenmiş kodu çalıştırın.

Bir Tercümanın Çalışması

Bir tercüman üst düzey çeviri yapar dil kodlaması makine dostu veya iyi yürütülebilir bir ara dile dönüştürür. Bir yorumlayıcı, kodun her satırını okur ve hemen çalıştırmadan önce makine koduna dönüştürür. Yürütme sırasında, tercüman her kaynak ifadesini satır satır çalıştırır. Bir tercüman, etkileşimli hata ayıklamayı kolaylaştırır ve kapsamlı hata uyarıları sunar. 

Tercüman İhtiyacı

Bir tercümanın birincil ve en önemli işlevi, kaynak kodunu üst düzey dilden makine diline dönüştürmektir. Neyse ki, bunun için kullanılabilecek bir derleyicimiz zaten vardı; üst düzey bir dil derleyicisi çok etkili bir araçtır. Yine de derleyicinin birkaç dezavantajı var. Gerçekten büyükse kaynak kodunun oluşturulması saatler alabilir ve bu da derleme sürecini önemli ölçüde uzatabilir. Tercüman işlevini yerine getirir. Yorum, bu uzun derleme süresini kısaltabilir. Bir seferde yalnızca tek bir komutu tercüme edebilirler, ancak bu talimatı hemen yerine getirebilirler. Bu nedenle yorumlayıcı, kodun tamamını beklemek yerine tek bir satırı anlar ve onu işler. 

Tercümanın Avantajları

Bir tercüman aşağıda listelenen avantajlara sahiptir:

  • Tercümanlar, programcıların kodlarını satır satır çalıştırmalarına ve sonuçları hemen görmelerine izin vererek etkileşimli hata ayıklamayı mümkün kılar. Bu, hızlı hata algılamayı ve kod hata ayıklamasını kolaylaştırır.
  • Kullanılabilirlik: Tercümanlar genellikle kullanımı basit, basit bir arayüze sahiptir ve bu da onları yeni programcıların kullanımına sunar. Programcılar, derleme ve bağlamanın zorluklarından endişe duymadan kodlarını çalıştırabilir.
  • Dilin yorumlayıcısını destekleyen herhangi bir sistemde yorumlanmış kod çalıştırma yeteneği, taşınabilirlik olarak bilinir. Bu, aynı kodun birçok işletim sisteminde ve donanım kurulumunda değişiklik yapılmadan çalışabileceğini gösterir.
  • Daha hızlı geliştirme: Programcılar yorumlanmış dillerle kodlarını hemen test edebildikleri için daha hızlı kod üretebilirler. Sonuç olarak, yazılım inisiyatifleri daha hızlı pazara çıkma süresine ve daha hızlı geliştirme döngülerine sahiptir.
  • Daha kapsamlı hata mesajları: Tercümanlar kodu her seferinde bir satır değerlendirip çalıştırdıklarından, derleyicilerden daha kapsamlı hata mesajları üretebilirler. Bu, programcıların hataları bulmasını ve çözmesini kolaylaştırabilir.
  • Kodlama kurslarını inceleyin.

Tercümanların Dezavantajları

Tercümanlar pek çok fayda sağlarken, bazı dezavantajlar da vardır, örneğin:

  • Daha yavaş satır satır çeviri ve yürütme: Yorumlanan kod satır satır dönüştürülüp yürütüldüğünden, derlenmiş koddan daha yavaş çalışabilir. Yüksek performans gerektiren uygulamalar, daha yavaş program performansına yol açabileceğinden bu konuda endişe edilmelidir.
  • Güvenlik tehlikeleri: Yorumlanan diller, dinamik kod yürütülmesine izin verdiği için, enjeksiyon saldırıları gibi güvenlik tehlikelerine karşı daha duyarlı olabilirler. Tercüman yeterince korunmuyorsa, bu bir güvenlik endişesi oluşturur.
  • Sınırlı optimizasyon: Çalıştırmadan önce tüm kod tabanını inceleme şansı verilmediğinden, yorumlayıcılar derleyiciler kadar kodu optimize etme yeteneğine sahip değildir. Bu, daha az etkili koda yol açabilir.
  • Ölçeklenebilirlik Sorunları: Tercümanlar, özellikle bazı durumlarda derlenmiş dillerden daha az ölçeklenebilir olabilir. Bunun nedeni, yorumlanan dillerin yürütülürken derlenmiş dillerden daha fazla kaynağa ihtiyaç duyma olasılığıdır.
  • Daha yüksek bellek tüketimi: Kodu, yorumlayıcıyı ve çalışma zamanı ortamını depolamak için daha fazla alana ihtiyaç duyduklarından, yorumlanan diller derlenmiş dillerden daha fazla bellek tüketebilir.

Tercüman Türleri 

Aşağıdaki liste birçok yorumlama uzmanlığını içerir:

1 numara. Zincirli Kod Tercümanları 

Zincirli tercümanlar, her talimatın bir fonksiyona veya talimat setine işaret eden bir kelime olduğu işaretçiler kullanır. Parametreler bundan sonra listelenir. Yönergeleri bir döngü içinde yineledikten sonra işaret ettikleri işlevi çağırırlar. Her talimat seti, bir sonrakine geçmeden önce bir getirme ile sonuçlanacaktır. 

2 numara. Şablon Tercümanı

Bu, önemli bir bayt kodu düzenini koruyan benzersiz bir yorumlayıcı türüdür. Eşleşen yerel makine yönergeleri doğrudan ona eşlenir. Bunlar, ana bilgisayar donanımında anahtar-değer çiftleri veya "şablonlar" olarak saklanmalıdır. Belirli bir kod segmenti çalıştırıldığında, şablon basitçe yüklenir veya bir işlem kodu eşlemesine atlar. Ardından, bundan sonra doğrudan donanım üzerinde çalışır. Diğer çevirmen türleriyle karşılaştırıldığında, önemli ölçüde daha hızlıdır. Bunun nedeni, çağrıları uygulamak yerine doğrudan donanıma ileten şablonun basit mimarisidir. 

#3. Soyut Sözdizimi Ağacı Tercümanları 

Bu yorumlayıcılar kullanılarak kaynak kod, verimli bir soyut sözdizimi ağacına (AST) dönüştürülür ve program bu yapıya göre çalıştırılır. Bu durumda her cümle bir kerede işlenir. Bu, sistemin çalışma süresi boyunca analizi etkin bir şekilde gerçekleştirmesini sağlar. Bayt kodu yorumlayıcılarının aksine, küresel bir program yapısını korur ve ifadeler arasındaki bağlantıyı korur. Sıkıştırıldıklarında daha yoğun bir temsil sunarlar. 

#4. bayt kodu yorumlayıcı 

Bu, önce kaynak kodunu orta ve alt düzey bir temsil olan bayt koduna dönüştürerek programları çalıştıran özel bir yorumlayıcı türüdür. Bu tercüman taşınabilir ve küçük bir ikili dosya olarak kullanılabilir. Orijinal kaynak kodundan daha verimli çalıştırılabilir. Çalışma zamanı ortamında, bayt kodu, bir bayt kodu yorumlayıcısı aracılığıyla bir sanal makinede yürütülür. Donanımın temel bayt kodu arasında bir soyutlama katmanı sunar ve 

# 5. Yığın Tabanlı Tercüman

Bu yorumlayıcı, genel amaçlı kayıtlar kullanmadan donanım işlemcisini simüle eder. Bayt kodu yönergeleri, geçici değerleri depolamak için bir işlenen yığını kullanmalıdır. Bu tercüman, program komutlarını organize eder ve yürütür. yığın veri yapısı. Kaynak kodunu satır satır okuduğundan, işlenenler yığına itilir ve bir işlem gerçekleştirileceği zaman sahip olunur. 

#6. Kayıt Tabanlı Tercüman

Komut seti ve bağımsız değişkenlerin konumu, dönüş değerleri, yerel değişkenler ve herhangi bir geçici değer dışında, bu yorumlayıcı, yığın tabanlı bir yorumlayıcı ile karşılaştırılabilir. Bu yorumlayıcılar, yığın tabanlı yorumlayıcıların aksine, işlenenleri ve ara sonuçları depolamak için sanal kayıtlar kullanır. Daha yüksek yürütme hızları ve mükemmel performans, bu stratejinin sonuçlarıdır. 

Tercüman Örneği

İfade yorumlama, bilgisayar dillerinin geliştirilmesinde dikkate alınan bir konu olmuştur. İşte birkaç örnek:

#1. piton

1991 yılında geliştirilen, oldukça iyi bilinen, özgür, nesne yönelimli yorumlanan bir dildir. Ek olarak, başkaları tarafından kullanılmak üzere başka bileşenlerin eklenmesine izin veren modülerdir. Web sunucularında, arka uç işleme dili olarak Python kullanılır.

#2. Temel

Yorumlanmış programlama dillerinin babası, yaklaşık elli yıl önce, 1963'te öğrenilmesi kolay bir dil olarak yaratıldı. Etkileşimi, basit sözdizimi ve siz yazarken kod denetimi, güçlü noktalarıdır.

3 numara. java

İkinci tercüman çeşidi de budur. Kaynak kodunu, daha sonra bir sanal makinenin yürüttüğü bayt koduna dönüştürür. Bir şirketin iş uygulamasının iş mantığını yazmak için Java oldukça yaygın bir seçimdir.

Örneğin, bir inşaat kooperatifinin web sitesinde çalışan bir Java sunucusu, özel bir tahmin sağlamak için gerekli tüm karmaşık iş kurallarını işleyen bir çevrimiçi ipotek başvuru formuna bağlı olacaktır.

Programlama Ne Demektir?

Makinelere bir programın nasıl yürütülmesi gerektiğini özetleyen bir dizi talimat vermek, programlama sürecidir. Bilgisayar programlarını düzgün bir şekilde oluşturmak için, programcıların tüm hayatlarını çeşitli programlama dilleri ve araçları üzerinde çalışarak geçirmeleri gerekir.

Belirli bilgi işlem etkinliklerini ve yeteneklerini etkinleştirmek için mantığın uygulanmasına programlama da denir. Her biri farklı bir programlama paradigmasına, uygulamasına ve etki alanına sahip bir veya daha fazla dilde bulunabilir.

Programlama, bir bilgisayara sorunları ele almak için hangi etkinlikleri gerçekleştirmesi gerektiği konusunda talimat vermek için kullanılan teknolojik bir prosedürdür. Programlamada, insanlar ve bilgisayarlar, bilgisayarın anlayabileceği bir dilde takip etmesi (kod) için talimatlar geliştirmek üzere birlikte çalışırlar. 

Aynı zamanda hayatımızda pek çok şeyi mümkün kılar. İşte birkaç örnek: 

  • Programlama, bilgi bulmak, bir hizmet sağlayıcıyla iletişim kurmak veya satın almak için bir web sitesini ziyaret ettiğinizde, sitenin kaydolma veya satın alma düğmeleri, iletişim formları ve açılır menüler gibi sayfa özellikleriyle etkileşime girmenizi sağlar.
  • Bir akıllı telefon uygulamasına giren programlama sayesinde kolayca yemek sipariş edebilir, bir araba paylaşımı hizmeti rezerve edebilir, kondisyonunuzu ölçebilir, medyaya erişebilir ve başka şeyler yapabilirsiniz. 
  • Programlama, dosya depolama ve otomasyona yönelik çeşitli uygulamaların yanı sıra dünyanın dört bir yanındaki insanları birbirine bağlayan video konferans çözümleriyle işletmelerin daha verimli çalışmasına yardımcı olur. 
  • Uzay araştırmaları için programlama gereklidir.  

Derleyici ve Tercüman Arasındaki Fark Nedir?

Bir derleyici, bir programı bütünüyle inceler. Bir kod yorumlayıcısı, her seferinde yalnızca bir satır okur. Derleyiciler ara makine kodları oluşturur. Tercümanlar asla herhangi bir ara makine kodu üretmezler.

Hangisi daha iyi? Tercüman mı Derleyici mi?

İhtiyaç ne kadar iyi olduğunu belirler. Tercüman hata ayıklama için oldukça yardımcı olsa da, yürütme genel olarak yavaştır. Bir derleyici tüm kaynak kodunu kontrol etse de sorunları çözmek zor olabilir. Seçim sadece sonuca göre yapılır. 

Java Tercüman mı yoksa Derleyici mi?

Java'nın kaynak kodu önce ikili bayt kodunda derlenir, bu da onu hem derlenmiş hem de yorumlanmış bir dil haline getirir. Genellikle yazılım tabanlı bir yorumlayıcı olan Java Virtual Machine (JVM) bu bayt kodunu yürütür. Java oldukça uyumludur. 

En Hızlı Hangisi? Tercüman mı Derleyici mi?

İşlem dikkate alındığında tercüman derleyiciden daha hızlıdır. Bununla birlikte, bir program bir kez derlendikten sonra, derlenen programlar çalışma süresi boyunca derlenmemiş olanlardan daha hızlı yürütülür. 

Referans 

Yorum bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlenmişlerdir. *

Hoşunuza gidebilir