Bahasa pemrograman C
Bahasa pemrograman C dibuat pada tahun 1972 oleh Dennis
Ritchie di Bell Telephone Laboratories. Sebuah pusat penelitian yang berlokasi di Murray Hill, New
Jersey, Amerika Serikat. Ritchie membuat bahasa pemrograman C untuk mengembangkan sistem
operasi UNIX. Sebelumnya, sistem operasi UNIX dibuat menggunakan bahasa
assembly (assembly language). Akan tetapi bahasa assembly sendiri sangat rumit
dan susah untuk dikembangkan. Dengan tujuan mengganti bahasa assembly, peneliti
di Bell Labs membuat bahasa pemrograman B. Namun bahasa pemrograman B juga
memiliki beberapa kekurangan, yang akhirnya di lengkapi oleh bahasa pemrograman
C.
Meskipun C
dibuat untuk memprogram sistem dan jaringan komputer namun bahasa ini juga
sering digunakan dalam mengembangkan software aplikasi. C juga banyak dipakai
oleh berbagai jenis platform sistem operasi dan arsitektur komputer, bahkan
terdapat beberepa compiler yang sangat populer telah tersedia. C secara luar
biasa memengaruhi bahasa populer lainnya, terutama C++ yang merupakan extensi
dari C.
Dengan
bahasa C inilah sistem operasi UNIX ditulis ulang. Pada gilirannya, UNIX
menjadi dasar dari banyak sistem operasi modern saat ini, termasuk Linux, Mac
OS (iOS), hingga sistem operasi Android.
bahasa C
saat ini kebanyakan dipakai sebagai bahasa pengantar untuk mempelajari
algoritma. Dimana algoritma itu sendiri merupakan kumpulan instruksi untuk
memecahkan masalah.
Fitur
dan Keunggulan Bahasa Pemrograman C
Berikut
beberapa fitur serta keunggulan bahasa pemrograman C jika dibandingkan dengan
bahasa pemrograman lain:
- C sebagai bahasa pemrograman prosedural
Konsep
pemrograman prosedural adalah sebuah metode pemrograman yang setiap baris
perintah diproses secara berurutan dari baris paling atas hingga baris paling
bawah. Selain itu bisa terdapat fungsi tambahan (function) yang digunakan untuk
menyelesaikan berbagai tugas. Bahasa pemrograman C termasuk ke dalam kelompok
ini.
Selain
konsep prosedural, terdapat juga konsep pemrograman object (object-oriented
programming). Di dalam bahasa pemrograman object, setiap tugas akan dijalankan
menggunakan class dan object. Contoh bahasa pemrograman object adalah JAVA.
Bagi
pemula, sangat disarankan untuk mempelajari bahasa pemrograman prosedural
terlebih dahulu, baru kemudian masuk ke dalam bahasa pemrograman object. Ini
juga menjadi alasan untuk belajar bahasa C terlebih dulu baru kemudian masuk ke
bahasa pemrograman object seperti JAVA. Beberapa bahasa pemrograman juga
mendukung konsep prosedural dan object sekaligus, contohnya bahasa pemrograman C++
dan PHP.
- Bahasa C sangat cepat dan efisien
Aplikasi
yang dibuat menggunakan bahasa C bisa dieksekusi dengan sangat cepat serta
berukuran kecil. Ini karena C bisa langsung berkomunikasi dengan hardware,
sebuah fitur yang jarang tersedia di bahasa pemrograman modern seperti JAVA,
PHP, maupun Phyton. Akan
tetapi, hal ini juga memiliki kelemahan. Bahasa C relatif sederhana dan tidak
memiliki fitur-fitur modern seperti garbage collection dan dynamic typing.
- C adalah portable language
Maksudnya,
bahasa pemrograman C bisa di-compile ulang supaya berjalan di berbagai sistem
operasi tanpa perlu mengubah kode-kode yang ada. Aplikasi yang dibuat di
Windows dengan bahasa C, bisa dipindahkan ke Linux dengan sedikit atau tanpa
modifikasi.
- C merupakan “induk” dari bahasa pemrograman modern
Bahasa
pemrograman C banyak menginspirasi bahasa pemrograman lain, seperti C++, C#,
Objective C, PHP, JAVA, JavaScript dan masih banyak lagi. Dengan mempelajari
bahasa C, anda akan familiar dan lebih mudah saat berpindah ke bahasa
pemrograman lain yang merupakan turunan dari C.
Aplikasi
Code Blocks
Code Blocks
adalah salah satu aplikasi IDE (Integrated
Development Environment) untuk bahasa C. Dengan menggunakan Code Blocks, kita
sudah mendapati aplikasi teks editor, compiler, linker dan debugger untuk
bahasa pemrograman C dalam sekali install, sehingga bisa langsung digunakan.
- Code Blocks sendiri merupakan aplikasi Open Source yang bisa didapat dengan gratis. IDE ini juga tersedia untuk sistem operasi Linux, Mac, dan Windows.