Bahasa pemrograman C sebuah bahasa pemrograman yang dikembangkan oleh
Dennise M. Ritchie yang juga pengembang UNIX. Sedangkan C++ adalah
improvisasi dari C yang dilengkapi dengan fitur unggulan lainnya, salah
satunya adalah adanya fitur paradigma
object oriented programming.
C/C++ merupakan bahasa pemrograman yang sudah dikenal dari 20 dekade
lebih untuk pengembangan aplikasi di UNIX, dan aplikasi lainnya. Namun
bagi beberapa mahasiswa jurusan IT di Indonesia khususnya, bahasa C/C++
merupakan sebuah bahasa yang agak dijauhi dan menakutkan oleh mahasiswa
jurusan IT pada umumnya.
C/C++ merupakan bahasa pemrograman yang biasanya digunakan sebagai
pengantar di mata kuliah algoritma dan pemrograman, struktur data, dan
teknik kompilasi. Mahasiswa cenderung beralih ke bahasa pemrograman lain
karena menganggap bahasa C/C++ adalah bahasa yang hanya digunakan untuk
kuliah saja. Tapi tahukah bahwa C/C++ tidak hanya sebatas untuk kuliah?
Berikut ini adalah beberapa penggunaan bahasa pemrograman C/C++ yang
tidak hanya terbatas untuk kuliah saja.
1. Mempelajari Kernel dari Sistem Operasi
Kernel Linux, Windows, dan OSX dibangun menggunakan C/C++. Kernel merupakan kumpulan
system libraries,
system calls,
hardware driver,
compiler, dan beberapa aplikasi untuk
user. Kernel merupakan program komputer yang mengelola
input/output antara
hardware dengan aplikasi yang dibangun oleh seorang
programmer. Kernel menerjemahkan instruksi dari aplikasi menjadi instruksi yang akan dieksekusi oleh CPU dan
hardware lainnya. Kernel memiliki tempat yang sangat terproteksi di
memory. Kernel melakukan tugas seperti mengeksekusi proses dan menanganti
interrupts. Pemisahan ini dilakukan agar
user Tidak mengganggu sistem dengan menggunakan program miliknya. Berbekal dengan kemampuan C/C++, Anda dapat mempelajari XNU
(https://github.com/opensource-apple/xnu) dan Linux
(https://www.kernel.org/). Keduanya merupakan kernel yang bersifat
open source.
2. Membangun aplikasi desktop
Membuat aplikasi
desktop merupakan salah satu ranah yang
digeluti oleh pengembang perangkat lunak. Dengan menggunakan C/C++, kamu
dapat membuat berbagai aplikasi mulai dari sederhana hingga kompleks
dengan memanfaatkan GUI
library yang disediakan oleh sistem operasi yang kamu gunakan. Jika menggunakan Windows, kamu dapat menggunakan GUI
library Windows Form. Jika menggunakan OSX, kamu dapat menggunakan GUI
library Cocoa. Sedangkan di Linux dan Unix, kamu dapat menggunakan GTK. Tidak hanya terpaku pada GUI
library yang terikat pada suatu sistem operasi, dengan C++ kamu juga dapat menggunakan GUI
library yang bersifat
cross-platform seperti WxWidget, Qt, FLTK, dan IUP.
3. Membuat aplikasi mikrokontroler
C/C++ sudah lama digunakan untuk pengembangan aplikasi
mikrokontroler. Salah satu teknologi yang paling banyak digunakan adalah
CodeAVR yang merupakan IDE untuk mengembangkan aplikasi mikrokontroler
di
chip AtMega. Mikrokontroler sangat luas, mulai dari membangun perangkat elektronik, robotik, hingga
internet of things dapat kamu jelajahi untuk membangun perangkat yang kamu rancang. C/C++ ini umumnya menjadi partner utama para pengembang robot.
4. Ikut mengembangkan teknologi open source
Tak dapat dipungkiri bahwa C/C++ sudah turut andil dalam pembangunan berbagai aplikasi
open source di dunia. Mulai dari kernel sistem operasi hingga bahasa pemrograman dibangun diatasnya. Tentu saja karena mereka
open source, kamu dapat berkontribusi untuk ikut menyumbang fitur yang kamu inginkan atau memperbaiki kode program sesuai dengan
guideline yang mereka miliki. Contoh teknologi
open source
yang populer adalah NodeJS, dimana banyak kontributor yang ikut
mengembangkan NodeJS dengan mengandalkan C/C++. Di Indonesia, ada juga
bahasa pemrograman BAIK yang siap menanti kontributor dan peninjau
proyek untuk mengembangkan bahasa BAIK menggunakan C/C++.
5. Membuat atau mempelajari bahasa pemrograman dengan C/C++
Dengan berbekal teknik kompilasi dan automata, mungkin kamu dapat
memulai bereksperimen untuk membuat bahasa pemrograman sendiri dengan
menggunakan bahasa C/C++. Mengapa tidak? Karena bahasa pemrograman yang
ada seperti PHP, Python, NodeJS, Ruby, dan lainnya menggunakan bahasa
C/C++ untuk menyusun perintah,
keyword, aturan sintaks,
libraries,
lexer dan
parser.
Bahasa pemrograman BAIK yang dikembangkan Pak Haris Hasanudin pun
menggunakan C/C++ untuk membangunnya. Umumnya bahasa pemrograman
memiliki untuk menjalankan instruksi dari bahasa pemrograman. Sebagai
contoh, kamu dapat melihat bagaimana bahasa C/C++ digunakan untuk
menjalankan program yang ditulis menggunakan BAIK di
source code BAIK di SourceForge
6. Membuat library untuk bahasa pemrograman lain
Tidaklah mengherankan apabila C/C++ digunakan untuk membangun
library
bagi bahasa C/C++. Ternyata eh ternyata bahasa pemrograman yang populer
seperti Ruby, Java, Python, dan PHP mengizinkan kita untuk membangun
library
dalam bahasa C/C++ yang nantinya dapat diakses sebagaimana sintaks
masing – masing bahasa pemrograman tersebut. Di Ruby, kamu dapat membuat
library dengan menggunakan
standard RubyGems. Di Java, kamu dapat membuat
library dengan menggunakan fitur
Java Native Interface. Di PHP, kamu dapat menggunakan teknologi
third party seperti
PHP-CPP untuk membangun
library PHP menggunakan C++. Di Python, kamu dapat mengikuti panduan membangun
library Python dengan C/C++ di dokumentasi resmi
Python.
7. Membuat aplikasi perangkat mobile
Ranah perangkat
mobile merupakan salah satu ranah di
teknologi informasi yang sangat berkembang cepat. Jarak rilis antar
pembaharuan sistem operasinya pun sangat dekat. Beberapa sistem operasi
perangkat
mobile yang populer antara lain Windows Phone 8,
Android, TizenOS, SailfishOS, Ubuntu Touch, PalmOS dan iOS. Seperti yang
kita tahu, bahasa pemrograman yang umum digunakan di TizenOS, iOS,
Sailfish OS dan PalmOS adalah C++, berbeda dengan Windows Phone 8 yang
umum menggunakan C#, Android yang umum menggunakan Java, dan Ubuntu
Touch yang umum menggunakan QML. Windows Phone 8 mengizinkan kamu untuk
membangun aplikasi
mobile di
platform tersebut menggunakan
Visual C++. Android mengizinkan kamu untuk membangun aplikasi dengan C++ yang dibantu dengan menggunakan
Native Development Kit. Sedangkan Ubuntu Touch mengizinkan kamu untuk
membangun ekstensi QML
menggunakan C++ yang dipadu dengan Qt Library. Untuk iOS sendiri
Objective-C lebih banyak digunakan untuk pengembangan aplikasi
mobile di
platform tersebut.
8. Membuat Game
Membuat
game, salah satu hal yang paling menarik di antara pengembangan perangkat lunak lainnya. Untuk mengembangkan
game Anda membutuhkan aset berupa suara, gambar,
platform, dan tentu saja kode program yang berisi logika
game. C++ sudah akrab di mata para pengembang
game mulai dari pengembang
game Nintendo, PlayStation, GameBoy Advance, dan konsol lainnya. Pada saat itu memang tidak banyak pengembang
game yang dapat dengan mudah mendapatkan SDK untuk membangun
game di
platform tersebut. Tapi kini sudah banyak tersedia
game engine seperti Marmalade, Panda3D, dan Cocos2D yang dapat kamu gunakan untuk mengembangkan
game dengan menggunakan C++. Misal saja dengan Panda3D, kamu dapat membangun
game 3D yang dapat dipasang di banyak sistem operasi, atau juga dapat membangun
game untuk Android/Windows Phone/iOS dengan menggunakan Cocos2D.
0 komentar:
Posting Komentar