βοΈ Kompilasi vs Interpretasi
Kenapa C++ harus di-compile dulu sedangkan Python langsung jalan?
Dua cara komputer memahami kodemu
Komputer sebenarnya hanya paham bahasa mesin: deretan 0 dan 1. Karena itu kodemu perlu diterjemahkan. Ada dua cara: DIKOMPILASI β seluruh kode diterjemahkan lebih dulu menjadi file program, baru dijalankan; seperti menerjemahkan seluruh buku sebelum dibaca cepat. DIINTERPRETASI β kode dibaca dan dijalankan baris demi baris oleh penerjemah (interpreter); seperti penerjemah yang mendampingi sambil membacakan.
C++ β dikompilasi, sangat cepat
Kode .cpp diterjemahkan oleh compiler (g++) menjadi program. Setelah jadi bahasa mesin, jalanannya super cepat β makanya C++ jadi bahasa utama OSN dan pembuat game. Konsekuensinya: tiap kali kode diubah harus compile ulang, dan kamu harus menuliskan tipe data dengan rapi.
1g++ -O2 -std=gnu++20 -o main main.cpp
2./main < input.txt Python β diinterpretasi, ramah pemula
File .py langsung dijalankan oleh interpreter (python3) tanpa compile β tulis, enter, jalan! Tulisannya mirip bahasa manusia sehingga nyaman untuk pemula. Imbangannya: karena dibaca baris demi baris saat berjalan, Python lebih lambat daripada C++. Dipakai luas di dunia AI dan data science.
1python3 main.py < input.txt Rust β dikompilasi, cepat dan modern
Seperti C++, Rust di-compile dulu (rustc) menjadi program yang cepat. Keunggulannya: compiler Rust memeriksa kesalahan memori SEBELUM program berjalan, jadi banyak bug tertangkap di awal. Imbangannya: aturannya lebih ketat, jadi terasa lebih menantang untuk pemula.
1rustc -O --edition 2021 -o main main.rs
2./main < input.txt Perbandingan singkat
Ringkasan tiga bahasa favorit APC:
| C++ | Python | Rust | |
|---|---|---|---|
| Cara jalan | Dikompilasi | Diinterpretasi | Dikompilasi |
| Kecepatan | Sangat cepat | Lebih lambat | Sangat cepat |
| Ramah pemula | Cukup | Sangat ramah | Menantang |
| Wajib tulis tipe | Ya | Tidak | Ya |
| Compile dulu? | Ya | Tidak | Ya |
| Populer untuk | OSN, game | AI, data | Sistem modern |
Jadi, mulai dari mana?
Baru belajar? Mulailah dari Python supaya fokus ke logika. Fokus OSN atau suka kecepatan? C++ pilihan klasik. Ingin disiplin dan modern? Coba Rust. Tenang β di APC ketiganya diladeni sama baiknya, dan pindah-pindah bahasa itu normal kok!
Topik terkait
π§ Uji ingatanmu
Jawab untuk mengunci ingatan β 5 XP per jawaban benar + bonus 5 XP kalau tuntas semua.