Bahasa pemrograman atau bahasa penataolahan (bahasa Inggris: programming language) adalah sistem notasi untuk menulis program komputer. Sebagian besar bahasa pemrograman adalah bahasa formal berdasarkan teks, tetapi mungkin juga berupa grafis.
Deskripsi bahasa pemrograman biasanya dibagi menjadi dua komponen; yaitu sintaksis (bentuk) dan semantik (makna), yang biasanya didefinisikan oleh bahasa formal. Beberapa bahasa ditentukan oleh dokumen spesifikasi (misalnya, bahasa pemrograman C ditentukan oleh Standar ISO) sementara bahasa lain (seperti Perl) memiliki implementasi dominan yang diperlakukan sebagai rujukan. Beberapa bahasa memiliki keduanya, dengan bahasa dasar yang ditentukan oleh standar dan ekstensi diambil dari implementasi dominan yang umum.
Pengertian
Bahasa pemrograman adalah sebuah instruksi standar untuk memerintah komputer agar menjalankan fungsi tertentu. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaksis dan semantik yang dipakai untuk mendefinisikan tata olah (program). Bahasa ini memungkinkan seorang penata olah (programmer) dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa yang secara persis akan diambil dalam berbagai situasi.
Fungsi
Fungsi bahasa pemrograman yaitu memerintah komputer untuk mengolah data sesuai dengan alur berpikir yang kita inginkan. Keluaran dari bahasa pemrograman tersebut berupa tata olah/aplikasi. Contohnya adalah tata olah yang digunakan oleh kasir di mal-mal atau pasar raya, penggunaan lampu lalu lintas di jalan raya, dll.
Dewasa ini, bahasa Pemrograman yang kita kenal tentang ilmu komputer dan teknologi ada banyak sekali di belahan dunia. Perkembangannya mengikuti tingginya inovasi yang dilakukan dalam dunia teknologi. Contoh bahasa pemrograman yang kita kenal antara lain adalah untuk membuat aplikasi permainan, antivirus, web, penyunting, dan teknologi lainnya.
Bahasa pemrograman yang dikenal antara lain seperti Java, Visual Basic, C++, C, Cobol, PHP, .Net, dan ratusan bahasa lainnya. Namun tentu saja kebutuhan bahasa ini harus disesuaikan dengan fungsi dan perangkat yang menggunakannya.
Secara umum bahasa pemrograman terbagi menjadi 4 kelompok, yaitu:
- Object Oriented Language (Bahasa Bertuju Objek): Visual dBase, Visual FoxPro, Delphi, Visual C
- High Level Language (Bahasa Aras Tinggi): seperti Pascal dan Basic
- Middle Level Language (Bahasa Aras Tengah): seperti bahasa C, dan
- Low Level Language (Bahasa Aras Rendah): seperti bahasa Assembly
Tingkatan
Bahasa tingkat tinggi
Bahasa pemrograman masuk tingkat ini karena bahasa tersebut mendekati bahasa manusia. Contohnya bahasa Basic, Visual Basic, Pascal, Java, PHP.
Bahasa tingkat menengah
Disebut tingkat menengah karena bisa masuk ke dalam bahasa tingkat tinggi maupun rendah. Contohnya bahasa C.
Bahasa tingkat rendah
Bahasa pemrograman masuk tingkat ini karena bahasanya masih jauh dari bahasa manusia. Contohnya bahasa Assembly.
Generasi
Sedangkan menurut generasinya, bahasa pemrograman digolongkan menjadi 5 generasi:
- Generasi ke-1: machine language
- Generasi ke-2: assembly language: Assembler
- Generasi ke-3: high level programming language, contoh: C dan Pascal
- Generasi ke-4: 4 GL (fourth-generation language), contoh: SQL
- Generasi ke-5: Programming Language Based Object Oriented & Web Development
Proses pembuatan program
Proses pembuatan program yaitu kita menulis kode sumber pada teks editor misalnya notepad kemudian mengubahnya menjadi bahasa mesin yang bisa dieksekusi oleh CPU. Proses pengubahan kode sumber (source code) menjadi bahasa mesin (machine language) ini terdiri dari dua macam yaitu kompilasi dan interpretasi.
Kompilasi
Dalam proses kompilasi semua kode sumber dibaca terlebih dahulu dan jika tidak ada kesalahan dalam menulis program maka akan dibentuk kode mesinnya sehingga program bisa dijalankan. Program yang melakukan tugas ini disebut Compiler. Program hasil kompilasi akan berbentuk executable. Program bisa langsung dijalankan tanpa harus memiliki Compiler di komputer yang menjalankan program tersebut. Bahasa yang menggunakan teknik kompilasi misalnya bahasa C, C++, Pascal, Assembly dan masih banyak lagi.
Interpretasi
Bahasa yang menggunakan teknik interpretasi akan membaca kode sumber perbaris dan dieksekusi perbaris. Jika ditemukan kesalahan dalam penulisan program maka di baris kesalahan itulah program akan dihentikan. Program yang melakukan tugas ini disebut Interpreter. Pada teknik interpretasi tidak ada akan dihasilkan program standalone, artinya untuk menjalankan program kita harus mempunyai kode sumbernya sekaligus interpreter program tersebut. Bahasa yang menggunakan teknik interpretasi misalnya bahasa Perl, Python, Ruby dan masih banyak lagi.
Kompilasi sekaligus interpretasi
Ada juga bahasa pemrograman yang menghasilkan programnya dengan teknik kompilasi sekaligus interpretasi. Misalnya bahasa java. Dalam pembuatan program java kode sumber diubah menjadi bytecode. Meskipun tampak seperti bahasa mesin namun ini bukanlah bahasa mesin dan tidak executable. Untuk menjalankan bytecode tersebut kita membutuhkan Java Runtime Environment (JRE) yang bertugas sebagai interpreter sehingga menghasilkan program dari bytecode tersebut.
Meskipun setiap bahasa pemrograman dibuat untuk membuat program namun setiap bahasa dibuat dengan tujuan dan fungsi yang berbeda-beda. Misalnya untuk membuat driver hardware kita tidak bisa menggunakan bahasa Visual Basic. Untuk membuat program berbasis sistem seperti driver kita bisa gunakan bahasa C atau Assembly. Contohnya sistem operasi linux yang open source. Jika anda melihat kode sumbernya anda akan menemukan bahwa linux dibuat menggunakan bahasa C. Sedangkan untuk pemrograman desktop kita bisa menggunakan Visual Basic. Bahasa tersebut dirancang oleh Microsoft untuk pemrograman desktop dengan tampilan GUI yang memukau.
Bahasa pemrograman yang umum digunakan
Ini adalah versi C yang digunakan oleh sistem operasi Apple serta sejumlah kecil aplikasi lain. Jika Anda ingin mengkhususkan diri dalam menulis kode untuk produk Apple maka ini adalah program yang harus anda kuasai.
Daftar
Lihat pula
Referensi
Pranala luar
- Bahan belajar tentang Bahasa pemrograman di Wikiversity
- Media terkait Bahasa pemrograman di Wikimedia Commons