Pada dasarnya perangkat lunak atau aplikasi yang kita gunakan pada PC atau Smartphone disebut sebagai "Program". Program itu sendiri dibuat dengan menggunakan apa yang kita sebut "Bahasa Pemrograman". Bahasa pemrograman sendiri hanya sebuah bahasa buatan yang dibuat mirip dengan bahasa manusia untuk memudahkan dalam membuat program. Komputer sendiri hanya memahami angka. Disinilah Compiler berperan sebagai penerjemah kode sumber yang telah dibuat menggunakan bahasa pemrograman menjadi bahasa mesin yang dipahami oleh komputer. Compiler merupakan konversi string karakter (kode sumber) yang diterjemahkan dalam bahasa pemrograman menjadi bentuk yang dapat dieksekusi di komputer (kode objek). Proses penerjemahan ini disebut dengan kompilasi.