Compiled atau Interpreted?

posted to on 15 February 2017

Beberapa hari lalu teman-teman membahas mengenai bahasa pemrograman yang compiled dan juga interpreted, bahasan ini sebenarnya mengacu pada performa yang ditimbulkan ketika mengeksekusi sebuah script atau program. Lalu dimanakah perbedaanya?

Interpreter dan Compiler

Agak kurang tepat jika mengatakan sebuah bahasa diterjemahkan atau dikompilasi karena keduanya merupakan sebuah properti dari implementasi bahasa pemrograman tersebut, dan bukan properti dari bahasa tersebut. Jadi, secara teori sebuah bahasa dapat dikompilasi atau diterjemahkan - tergantung pada implementasi yang digunakan.

Implementasi Kode Terkompilasi

Pada implementasi kompilasi kode program, sebuah compiler secara langsung menerjemahkan kode sumber ke bentuk kode mesin - sebuah kode yang secara spesifik dijalankan oleh mesin. Kemudian komputer akan menjalan kode mesin tersebut.

Implementasi Kode Terinterpretasi

Pada implementasi ini kode sumber tidak dijalankan langsung oleh mesin, disini sebuah program (interpreter) akan membaca dan mengeksekusi kode sumber. Pada implementasi ini kode sumber asli umumnya juga diubah kedalam intermediate code yang kemudian diproses oleh interpreter untuk diubah ke dalam machine code.

Mana yang lebih menguntungkan?

Sebenarnya pembandingan model bahasa terkompilasi dan terinterpretasi ini sangat tergantung pada implementasi penggunanya, sehingga perbandingan yang dapat kita ambil umumnya hanya secara general:

  • Bahasa terkompilasi memiliki keuntungan untuk lebih cepat hal ini dikarenakan kode diterjemahkan langsung ke native code.
  • Bahasa terinterpretasi memiliki keunggulan lebih portable dan juga lebih mudah untuk dipelajari <- ini tergantung dari niat sih.

Pair With Me!
Comments? Contact me via Twitter or e-mail.