Tutorial Belajar C++ Part 1: Pengertian Bahasa Pemrograman C++

Apa itu bahasa pemrograman C++? Apa fungsi dari mempelajarinya?

Dalam tutorial pertama dari seri belajar bahasa pemrograman C++ di duniailkom ini kita akan membahas tentang hal tersebut, termasuk pengertian dari bahasa pemrograman C++.


Pengertian Bahasa Pemrograman C++

Belajar C++ Duniailkom

Logo Bahasa Pemrograman C++

Bahasa Pemrograman C++ adalah bahasa pemrograman komputer yang bisa dipakai untuk membuat berbagai aplikasi (general-purpose programming language), dan merupakan pengembangan dari bahasa pemrograman C.

Bahasa C++ kadang disebut juga sebagai “C with Classes“. Ini karena perbedaan paling utama antara bahasa C dan C++ ada di dukungan ke pemrograman berbasis object (object oriented programming). Bahasa C++ sudah mendukung pemrograman berbasis object, sedangkan bahasa C belum.

Karena termasuk general-purpose programming language, yakni bahasa pemrograman yang bisa membuat berbagai aplikasi, bahasa pemrograman C++ bisa dipakai untuk membuat aplikasi desktop seperti antivirus, software pengolah gambar (image processing), aplikasi pengolah kata (word processing), hingga untuk membuat compiler bahasa pemrograman lain.


Sejarah Singkat C++

Bahasa pemrograman C++ dirintis sejak tahun 1979 oleh Bjarne Stroustrup, seorang ilmuwan komputer asal Denmark. Pengembangan bahasa C++ terinspirasi dari penelitian tesis Phd yang dulunya pernah dikerjakan Stroustrup.

Pada saat itu, Stroustrup tertarik dengan bahasa Simula yang sangat mudah dipakai untuk pembuatan aplikasi skala besar. Varian bahasa Simula, yakni Simula 67 dianggap sebagai bahasa pemrograman pertama yang menerapkan konsep pemrograman berbasis object.

Akan tetapi bahasa Simula dianggap terlalu lambat untuk penggunaan sehari-hari. Di sisi lain ada juga bahasa BCPL yang sangat cepat tapi kurang cocok untuk pembuatan aplikasi besar.

Ketika bekerja di laboratorium perusahaan AT&T Bell Labs, Bjarne Stroustrup memiliki masalah di pengembangan sistem operasi UNIX. Pada saat itu ia teringat tesis yang dulu dikerjakan dan ingin menerapkannya ke dalam bahasa C. Pemilihan bahasa C karena sudah cukup populer dan juga di eksekusi dengan cepat. Apalagi sistem operasi UNIX juga dibuat menggunakan bahasa C.

Akhirnya pada tahun 1982 Bjarne Stroustrup mulai menambah fitur-fitur baru ke dalam bahasa C, terutama dukungan class agar bahasa C bisa menggunakan paradigma object oriented programming (pemrograman berbasis object). Stroustrup terinspirasi dari bahasa Simula dan juga bahasa pemrograman lain seperti ALGOL 68, Ada, CLU and ML.

Bahasa baru ini disebut sebagai C++ yang diambil dari operator increment ” ++ ” . Operator increment biasa di pakai dalam bahasa pemrograman untuk menaikkan nilai variabel sebanyak 1 angka. Dengan demikian C++ juga berarti sebuah penambahan dari bahasa C standar.

Foto Bjarne Stroustrup

Foto Bjarne Stroustrup (sumber: www.stroustrup.com)

Pada tahun 1985, Bjarne Stroustrup membuat buku yang sangat terkenal berjudul C++ Programming Language. Buku ini menjadi referensi utama dan menjadi “standar tidak resmi” dari bahasa C++ pada saat itu. Pada tahun yang sama, dikembangkan pula compiler komersil C++ pertama.

Seiring perkembangan waktu, organisasi standar ISO secara resmi mengeluarkan standar C++98 pada tahun 1998, yang kemudian diikuti standar C++03 di tahun 2003.

Setelah itu secara bergantian di rilis standar C++11 di tahun 2011, standar C++14 di tahun 2014 serta standar C++17 di tahun 2017. Di akhir tahun 2020 ini di rencanakan rilis standar C++ 20.

Untuk penggunaan dasar, perbedaan standar C++ ini tidak akan begitu terasa. Seharusnya tutorial belajar bahasa C++ di Duniailkom ini tetap bisa dipakai pada semua compiler C++.


Untuk Apa Belajar C++?

Saya yakin sebagian besar pembaca tutorial ini belajar bahasa C++ karena diwajibkan oleh guru atau dosen. Ini tidak mengherankan karena bahasa C++ termasuk bahasa dasar yang sering dipakai untuk mempelajari dasar algoritma dan pemrograman. Alternatif lain bisa juga menggunakan bahasa Pascal dan juga bahasa C (tergantung dosen senangnya pakai bahasa apa).

Pemilihan bahasa C++ sebagai bahasa pertama atau bahasa dasar sebenarnya juga sangat bermanfaat meskipun tidak diwajibkan dosen atau bagi yang belajar otodidak. Ini karena bahasa C dan C++ menjadi dasar dari banyak bahasa pemrograman modern.

Jika anda sudah familiar dengan syntax / aturan penulisan bahasa C++, akan sangat mudah beralih ke bahasa yang lebih modern seperti Java, C#, PHP, atau JavaScript. Karena bahasa-bahasa ini semuanya turunan dari bahasa C dan C++.

Di luar fungsinya untuk belajar pemrograman dasar, bahasa C++ juga bisa dipakai untuk membuat berbagai aplikasi. Yang paling menonjol menurut saya ada di game programming, yakni bahasa pemrograman yang dipakai untuk membuat game.

Game modern sudah terbilang sangat kompleks, apalagi untuk game desktop. Umumnya programmer game butuh sebuah Game Engine yang berisi kumpulan kode program siap pakai (disebut sebagai library). Fungsinya untuk membantu pembuatan game dengan cepat, tidak lagi membuat semuanya dari nol.

Game engine yang paling terkenal diantaranya Unreal Engine, Unity, CryEngine, dan Construct. Daftar lengkap dari aplikasi game engine bisa dilihat ke List of game engines. Di halaman tersebut bisa terlihat bahwa C++ adalah bahasa pemrograman yang paling banyak dipakai.

Bahasa C++ banyak dipakai oleh game engine

Jadi jika anda tertarik menjadi seorang programmer game (terutama game desktop), C++ adalah bahasa dasar paling pas!

Diluar itu, C++ juga cocok dipakai untuk membuat aplikasi yang perlu banyak mengakses hardware seperti di perangkat IoT (Internet of Things), embedded system, hingga membuat aplikasi desktop berbasis grafis, terutama saat digabung dengan Microsoft Visual Studio.


Dalam tutorial ini kita telah membahas pengertian bahasa C++, melihat sejarah singkat dari bahasa C++, serta alasan untuk mulai belajar bahasa pemrogram yang satu ini. Berikutnya masih tentang sedikit teori yang banyak di tanyakan adalah tentang perbedaan antara bahasa C dengan bahasa C++.

Referensi:

  • https://en.wikipedia.org/wiki/C%2B%2B
  • https://en.wikipedia.org/wiki/List_of_game_engines
  • http://www.cplusplus.com/info/history/

*** Artikel Terkait ***

3 Comments

  1. Aqil Aziz
    16 Oct 20
    • Andre
      16 Oct 20
  2. Mail
    19 Oct 20

Add Comment