Perbedaan Antara Interpreter Dan Compiler

Share

Berbicara mengenai dunia programming, (sewaktu kuliah) kita pasti sering bertanya : suka bahasa apa? pakai bahasa apa? hehehe… dan juga sampai sekarang pertanyaan tersebut kerap muncul. Kemudian akan muncul saat-saat kita akan mengagung-agungkan bahasa yang kita pakai kemudian bertanya kepada orang lain yang beda “agama”, kenapa tidak pakai bahasa yang saya gunakan. Pada prinsipnya tentu tidak ada yang sempurna, semua punya keunggulan dan kelemahan. Cuma bagaimana cara kita untuk menggunakannya sesuai dengan kebutuhan.

Tapi, saya tidak akan membahas hal tersebut di atas. Dalam artikel ini saya akan membahas pengelompokan bahasa pemrograman yang dibedakan berdasarkan atas cara penerjemahannya. Apa itu Interpreter dan apa itu Compiler.

Kita umumnya menulis program dengan menggunakan bahasa tingkat tinggi. Bahasa tingkat tinggi adalah bahasa yang dipahami oleh manusia. Bahasa itu mengandung kata ataupun frase dalam Bahasa Inggris ataupun yang lain. Tapi komputer tidak mengerti bahasa tingkat tinggi tersebut. Komputer hanya mengerti program yang ditulis dengan nilai 0 dan 1 dalam bentuk binari, atau biasa disebut dengan bahasa mesin. Program yang ditulis dengan bahasa tingkat tinggi biasa disebut sebagai kode sumber. Kita perlu mengubah bahasa tingkat tinggi tersebut menjadi bahasa mesin dan hal tersebut dikerjakan oleh Interpreter dan Compiler. Oleh karena itu, Interpreter atau Compiler adalah suatu program yang mengubah bahasa tingkat tinggi menjadi bahasa mesin supaya bisa dimengerti oleh komputer.

Perbedaan antara Interpreter dan Compiler bisa dilihat pada tabel di bawah ini

Interpreter Compiler
Menerjemahkan kode sumber untuk 1 statemen dalam satu waktu Membaca keseluruhan kode sumber dan kemudian menerjemahkannya secara keseluruhan menjadi bahasa mesin
Membutuhkan waktu yang sedikit untuk menganalisa kode sumber tapi secara keseluruhan waktu eksekusinya menjadi lebih lambat Membutuhkan waktu yang lebih banyak menganalisa kode program tapi waktu eksekusinya menjadi lebih cepat
Tidak ada Intermediate Object Code dihasilkan, sehingga membuat memori efisien Menghasilkan Intermediate Object Code yang kemudian dihubungkan dengan yang lain, sehingga lebih banyak memerlukan memori
Menerjemahkan kode program secara kontinu sampai kode error pertama ditemukan, kemudian proses dihentikan. Oleh karena itu lebih mudah melakukan debug Secara umum menampilkan pesan error pada keseluruhan kode program. Oleh karena itu, ketika melakukan debug menjadi lebih sulit
Bahasa pemrograman seperti PHP, Python, Ruby menggunakan Interpreter. Bahasa pemrograman seperti C, C++ menggunakan Compiler.

Jadi kemudian terserah Anda mau memilih yang mana, karena keduanya memiliki tujuan yang sama 🙂

1 Comment

  1. Masih newbiee pusing belajarnya gan… HAHA

Tinggalkan Balasan

Your email address will not be published.

*