Perbedaan Bahasa Compiled dan Interpreted

Bagaimana komputer membaca kode kita, nah cara komputer membaca bahasa pemrograman itu ada 2 cara yaitu compiled dan interpreted.

Daftar Isi
Perbedaan Bahasa Compiled dan Interpreted

Perbedaan antara compiled dengan interpreted terletak pada bagaimana komputer membaca atau menjalankan kode yang sudah kamu buat.

Compiled

Proses compiled ini bisa diibaratkan seperti naskah yang sudah kamu tulis, diserahkan ke penerjemah professional untuk diterjemahkan ke bahasa yang komputer tau, hasilnya jadi sebuah file atau dokumen yang siap digunakan. Contoh bahasanya C++, C, Rust dan Go.

Contoh gcc kode.c -o program merupakan proses compile atau penerjemahan yang outputnya berupa file yaitu program. Hasil compile tersebut bisa dijalankan tanpa melakukan proses penerjemahan lagi.

gcc kode.c -o program
./program

Kelebihan

  • Eksekusi cepat
  • Optimal untuk aplikasi besar
  • Keamanan lebih tinggi karena kode sumber tidak langsung terlihat

Kekurangan

  • Proses compile memakan waktu
  • Tidak fleksibel untuk perubahan kecil

Interpreted

Kalau interpreted bisa diibarakan seperti kamu punya penerjemah pribadi setiap kamu berbicara akan langsung diterjemahkan. Artinya proses penerjemahan dilakukan secara real-time. Contoh bahasa yang diproses dengan cara ini yaitu Python, Javascript dan Ruby.

Contoh menjalankan Python

py program.py

Contoh menjalankan Javascript

node script.js

Kelebihan

  • Mudah di-debug saat pengembangan
  • Portabilitas tinggi, cukup install interpreter di perangkat

Kekurangan

  • Eksekusi lebih lambat
  • Membutuhkan interpreter, jadi tidak langsung standalone

Perbedaan

AspekCompiledInterpreted
Proses EksekusiKode diterjemahkan sepenuhnya ke dalam bahasa mesin sebelum dijalankanKode diterjemahkan baris per baris saat dijalankan
Kecepatan EksekusiCepat karena sudah diterjemahkan sepenuhnyaLambat karena diterjemahkan setiap kali dijalankan
Error HandlingError ditemukan saat proses compile, sebelum dijalankanError ditemukan saat kode berjalan (runtime)
PortabilitasHarus compile ulang di setiap platform (karena file biner berbeda)Bisa langsung dijalankan di platform yang punya interpreter
Ukuran FileHasil compile menghasilkan file biner (ukuran lebih besar)Kode sumber lebih kecil, tapi butuh interpreter untuk jalan
Contoh BahasaC, C++, Rust, GoPython, JavaScript, Ruby

Terimakasih sudah membaca blog ini, jangan lupa untuk membaca blog yang lainnya. Semoga bermanfaat.

Type your title notification

Write to describe this notification