Program komputer: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Wagino Bot (bicara | kontrib)
k minor cosmetic change
HsfBot (bicara | kontrib)
k Bot: Perubahan kosmetika
Baris 85:
Program komputer yang diinterpretasikan -baik secara ''batch'' ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dulu ke dalam sejumlah token baru kemudian dieksekusi, atau bisa juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sejumlah instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sebagai berkas [[P-Code]] terpisah untuk dieksekusi kemudian oleh interpreter. [[BASIC]], [[Perl]], dan {{program|Python}} merupakan beberapa contoh dari bahasa pemrograman yang menyediakan fasilitas penerjemahaan langsung. Alternatif lainnya, program komputer yang ditulis dalam bahasa pemrograman [[Java]] merupakan hasil kompilasi kode sumber ke dalam [[bytcode]] yang kemudian dieksekusi oleh interpreter yang disebut sebagai [[mesin virtual java]].
 
Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya bisa dilakukan lebih cepat karena proses pengetesan atas berjalannya program dapat dilakukan dalam waktu yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian lainnya adalah, untuk dapat menjalankan program tersebut, utilitas interpreter harus disertakan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang dapat didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam bentuk [[kode mesin]].
 
Umumnya saat ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (''Just in Time'') yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada saat program dijalankan sehingga tingkat unjuk kerjanya dapat ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.