Compiler, Linker dan IDE
Linker adalah, Kita akan membahas tentang konsep pemrograman, dalam bahasa pemprograman banyak hal atau istilah yang perlu kita pahami, mungkin beribu istilah jumlahnya, namun kali ini kita akan bahas yang lebih umum, seperti pengertian dari Compiler, Linker dan IDE. Yang mana dari ketiga istilah ini akan sering kita jumpai saat kita mempelajari bahasa pemrograman.

Yang perlu kita pahami lebih detail dalam mempelajari bahasa pemprograman, kita juga harus memahami betul bagaimana cara belajar programming. Selanjutnya kita akan bahas sesuai matri yang telah saya tulis diatas
Pengertian Compiler, Compiler adalah aplikasi yang berfungsi “membaca dan menterjemahkan” bahasa pemrograman komputer (kode program) untuk menghasilkan sebuah program. Seperti yang nantinya kita praktekkan, bahasa C berisi instruksi-instruksi yang ditulis dalam kode khusus. Contoh kode tersebut adalah: printf(“Hello World”). Compiler akan membaca perintah ini dan menghasilkan sebuah file exe. Dengan kata lain, Compiler Bahasa C adalah program yang dibutuhkan untuk memproses teks bahasa C untuk menjadi sebuah aplikasi.
Dimana bisa didapat compiler bahasa C?
Terdapat banyak compiler C. Daftar lengkapnya bisa dilihat ke List of compilers bahasa pemrograman C, yang cukup terkenal untuk sistem operasi Windows adalah:
MinGW
Turbo C
Cygwin
Visual C++
Code::Blocks
Sepanjang tutorial bahasa pemrograman C di duniailkom ini, saya akan menggunakan compiler Code::Blocks, yang cara instalasinya akan di bahas dalam tutorial selanjutnya.
Linker adalah, Dalam pembahasan mengenai pengertian compiler sebelum ini, saya menulis bahwa compiler akan memproses bahasa pemrograman menjadi sebuah aplikasi. Well… itu adalah pengertian yang di sederhanakan. Dalam teori bahasa pemrograman, proses dari sebuah teks kode program menjadi aplikasi melibatkan beberapa langkah. Diagram berikut merangkum proses yang terjadi:
Diagram Compiler dan Linker Bahasa Pemrograman C, Dalam membuat diagram compiler pertama kali kita membuat sebuah kode program dalam bahasa C, kode program ini (dikenal juga dengan sebutan source code) bisa dibuat menggunakan aplikasi teks editor biasa seperti Notepad. Khusus untuk bahasa pemrograman C, source code harus di simpan sebagai dengan akhiran file *.c, seperti hello_world.c, aplikasiku.c, luas_segitiga.c, dll.
Agar komputer bisa mengerti kode C yang sudah dibuat, source code tadi selanjutnya “di translate” menjadi bahasa mesin (machine language). Proses inilah yang dilakukan oleh compiler. Compiler juga memeriksa apakah kode program yang ditulis mengandung error atau tidak.
Apabila tidak ditemukan error, compiler akan membuat sebuah object files yang berisi object code. Di dalam object file inilah instruksi dalam bahasa mesin disimpan. Untuk kebanyakan compiler C, object file ini akan berakhiran *.obj dengan nama yang sama dengan source code.
Langkah terakhir diserahkan kepada linker. Tugas dari linker adalah menggabungkan berbagai library external dengan object file untuk menghasilkan sebuah program. Seperti yang akan kita pelajari nanti, kode program C biasanya butuh file library external. Sebagai contoh, untuk menampilkan teks ke layar dalam bahasa C perintahnya adalah printf(“Hello World”). Untuk bisa memproses perintah printf(), C butuh sebuah file external, yakni stdio.h.
Linker adalah yang akan menggabungkan hello_world.obj dengan stdio.h. Hasil akhirnya berupa sebuah program berextension *.exe. Karena file source code saya buat sebagai hello_world.c, file programnya akan bernama hello_world.exe. Dengan men-double-klik file hello_world.exe, program kita sudah langsung berjalan.
Compiler + Linker, Terlihat dari diagram diatas bawah proses compiler dan linker dibuat terpisah. Akan tetapi aplikasi compiler modern biasanya sudah menggabungkan kedua langkan ini dalam sekali jalan. Ketika kita men-klik tombol “compile”, file .exe sudah langsung terbentuk, tanpa harus menjalankan proses compile dan link secara terpisah.
Pengertian IDE, Istilah terakhir yang akan kita bahas adalah IDE. IDE merupakan singkatan dari Integrated Development Environment. IDE adalah aplikasi yang menggabungkan teks editor, compiler dan linker dalam 1 aplikasi. Kadang ditambah juga dengan sebuah debugger, yakni fitur untuk menampilkan kesalahan dari kode program.
Sebuah IDE sangat memudahkan proses pembuatan program, karena kita hanya perlu membuka 1 aplikasi saja. Beberapa IDE juga memiliki fitur tambahan seperti real-time debugging (memberitahu error sebelum kode program di compile), syntax highlighting (mewarnai beberapa kode agar mudah dibaca) dan code completion (memberikan saran penulisan kode program).
Contoh dari IDE untuk bahasa C adalah Turbo C, Visual C++ dan Code::Blocks.