Jumat, 23 September 2016

APA ITU C++ ???



Ada banyak sekali bahasa pemrograman di dunia ini, dan salah satu bahasa pemrograman tertua dan sampai sekarang masih tetap dipakai adalah bahasa pemrograman C++.
Setiap programmer dituntut agar bisa mempelajari banyak bahasa pemrograman, namun agar lebih focus mendalami satu bahasa pemrograman saja tidak apa-apa. Karena pada dasarnya, jika sudah ahli satu bahasa maka dia akan lebih mudah untuk memahami bahasa yang lain. Dan ini merupakan syarat wajib yang dibutuhkan untuk menjadi seorang programmer.

  • Sejarah
Jadi C++ itu adalah suatu bahasa pemrograman, bahasa yang digunakan untuk menentukan instruksi-instruksi yang kita berikan kepada suatu sistem. Disitu kita juga akan mengenal yang namanya compiler bahasa pemrograman. Untuk C++ sendiri banyak sekali freewarenya, contoh : C Free, Dev++, Borland dan masih banyak lagi, tapi sejauh ini yang mudah dipahami untuk pemula adalah C Free.

Nah, sebelum menjadi C++, bahasa ini dulunya dikenal dengan bahasa C sekitar tahun 1980-an. Sebelum itu juga tidak langsung memakai bahasa C, ada bahasa B yang biasa dikenal BCPL (Basic Combined Programming Language). Tapi dalam perkembangannya yang paling terkenal adalah bahasa C daripada bahasa Pascal, Basic atau yang lainnya.

Tahun 1989, dunia pemrogaman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C

Mulai awal tahun 1990, Bjorne Stroustrup dari AT & T Bell Laboratories mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan C yang dikenal dengan nama C++
  • Pengertian
Secara umum, C++ adalah suatu bahasa pemrograman. Bahasa C++ termasuk sebagai bahasa pemrograman tingkat menengah, maksudnya bahasa C++ bisa dipelajari dengan lebih mudah karena mudah dimengerti tetapi mempunyai kemampuan yang tinggi.
C++ merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek. Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik. Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.     
Bahasa tingkat tinggi merupakan bahasa yang mudah dipahami oleh manusia,C++ merupakan contoh bahasa dari bahasa tingkat tinggi. Contoh lain dari bahasa tingkat tinggi adalah Pascal , Perl, Java, dan lain lain. Sedangkan bahasa tingkat rendah merupakan bahasa mesin atau bahasa asembly. Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bahasa mesin. Oleh karena itu , jika suatu program ditulis dalam bahasa tingkat tinggi, maka program tersebut harus diproses dahulu sebelum bisa dijalankan dengan komputer.
Proses untuk untuk mengubah dari bahasa tingkat tinggi ke bahasa tingkat rendah dalam bahasa pemrograman ada 2 tipe yaitu intrepenter dan compiler.
Bahasa pemrograman seperti C++ merupakan contoh dari tipe compiler. Namun ada bahasa yang menggabungkan 2 tipe ini salah satunya adalah bahasa Java.


  • Bagaimana Filosophy bahasa C++?
Secara umum, pemrograman dengan bahasa C menggunakan 2 konsep, yaitu data dan algorithms. Data merupakan bahan yang akan diolah, sedangkan algorithms adalah metode pengolahan.
Bisa dibilang algorithms ini adalah fungsi/cara/metode/langkah dan lain lain untuk mengolah data tersebut.
Tapi bagaimanapun juga, penggunaan bahasa prosedural seperti C sangat tidak efisien untuk pembuatan software skala menengah ke atas. Terlalu banyak perulangan, terlalu banyak percabangan, terlalu banyak kode yang harus kita ketikan. Maka, seiring dengan perkembangan jaman dan teknologi, bahasa C ini dikembangkan ke tingkat lebih lanjut yaitu bahasa C yang berorientasi object yang disebut dengan C++.

  • Apa itu bahasa pemrograman berorientasi object? Apa bedanya dengan bahasa prosedural?
Object Oriented Programming (OOP) adalah bahasa pemrograman yang berorientasi pada object. Apa sih object??? Object itu ya bahasa pemrograman itu sendiri. 
Mari kita renungkan. Misalnya kita membuat sebuah object mobil misalnya. Mobil ini bisa kita buat dengan prosedural language maupun dengan OOP language. Loh, jadi tidak ada bedanya dong?? Sebentar dulu, harap bersabar.
Kita tidak akan membahas bagaimana cara membuat 1 mobil, bahasa apa yang digunakan untuk membuat mobil, tapi yang kita bahas adalah 1 mobil. Yup mobil yang sudah jadi yang baru saja anda buat dari mengetikan puluhan kode misalnya.
Nah, sekarang saya ingin 1 mobil tadi digandakan menjadi 2 mobil. Bagaimana anda membuat mobil yang satunya?? Apakah anda akan mengopikan semua kode anda tadi untuk menjadikan mobil ke dua??? Ini cuman dua, bagaimana kalo saya ingin 3, atau 4, atau 120 mobil???
Ah, ada renungan lain, mobil tadi telah anda buat, pasti ada bagian bagiannya seperti roda. Nah, bagaimana kalo saya ingin mobil yang sama dengan cat yang berbeda? Bagaimana kalo saya ingin anda membuat mobil yang sama dengan salah satu roda nya kempes.
Disinilah object oriented programming punya peranan yang sangat penting. Kita hanya perlu membuat sebuah class mobil. Untuk membuat mobil baru hanya tinggal membuat instance baru. Dan lain sebagainya. Jauh lebih elegan, lebih efisien, lebih terstruktur ketimbang prosedural language.

  • Bagian-bagian dalam pemrograman Bahasa C++
Fungsi Main
Merupakan fungsi yang menjadi inti dari program dan merupakan awal dan akhir eksekusi. Fungsi ini harus ada dalam setiap program. Tanda kurawal buka { merupakan tanda awal fungsi main dan tanda kurawal tutup } merupakan tanda berakhirnya fungsi main.

Prepocessor directive/header file
Preprocessor directive merupakan suatu pernyataan yang akan diikiutsertakan dalam program, dimana pernyataan tersebut akan di-compile sebelum proses compilasi yang sebenarnya dilakukan.

Deklarasi
Deklarasi diperlukan bila kita akan menggunakan pengenal (identifier) dalam program.
Identifier dapat berupa variable, konstanta dan fungsi.

Konstanta
Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses program berlangsung. Konstanta nilainya selalu tetap.

Variable
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan.

  • Aturan umum penulisan bahasa C++
1. Membedakan penulisan huruf besar dan kecil.
2. Untuk memberi komentar pada suatu statement (keadaan), dapat menggunakan /* di awal dan */ di akhir atau // dalam satu baris.
3. Awal dan akhir subroutine atau fungsi harus diapit kurung kurawal ({ })
4. Setiap statement harus diakhiri tanda titik koma, kecuali statement yang diawali oleh tanda kres “#” 
5. Setiap variabel yang digunakan wajib dideklarasikan terlebih dahulu.
6. Untuk bahasa C setiap melakukan proses input dan outpu data harus selalu menyertakan format datanya, sedangkan di C++ tidak.

        Perlu diingat, agar anda bisa memprogram atau menuliskan kode, kamu harus memerlukan namanya compiler, tanpa compiler kamu tidak akan menghasilkan program apa-apa. Dan compiler sendiri ada banyak jenis. Ada yang untuk pemrograman console dan pemrograman visual. Untuk yang sederhana bisa memakai yang jenis console.

  • Kelebihan dan kekurangan bahasa pemrograman C++
C++ itu pada dasarnya bahasa C juga, nah kemampuan C yang utama itu adalah seperti :
– Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua jenis komputer.
– bahasa Standard-nya ANSI bisa dipakai diberbagai platform.
– kecepatan program jika dibanding dengan program yang sama buatan bahasa lain, relatif lebih cepat.
– Bahasa C++ tersedia hampir di semua jenis komputer.
– Bahasa C++ hanya menyediakan sedikit kata-kata kunci (hanya terdapat 48 kata kunci).
– Dukungan pustaka fungsi dan kelas yang banyak sehingga memungkinkan pembuatan aplikasi makro.
– C++ adalah bahasa yang terstruktur, dengan demikian akan lebih mendukung OOP.
– Bahasa C++ termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa mesin.
– Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan hanya menggunakan library dan  file header.
– C++ dapat membuat aplikasi graphic processor berkualitas tinggi.
Jika dibandingkan dengan VB atau Delphi C++ memang tidak se-RAD dua bahasa tersebut , dan cenderung lebih rumit. Namun
dari perbandingan tersebut, sudah jelas pasti ada trade-off, seperti kecepatan, efisiensi kode, pengstrukturan kode.
Tidak hanya kelebihan-kelebihan yang dimiliki oleh C++, tetapi juga memiki kekurangan seperti:
– C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP karena kaidah-kaidah OOP dapat dilanggar. Dan
di C++ ada konsep pointer yang sangat membingunkan, ini salah satu alasan mengapa C++ menjadi momok yg paling tidak
disukai.
– C++ walapun tidak terpengaruh oleh Sistem Operasi tetapi tool untuk developmentnya harus spesific pada salah satu
sistem operasi contoh Visual Studio hanya dapat berjalan di Windows. Alasan ini juga nantinya akan dapat menurunkan
minat terhadap sistem operasi yang lain contohnya Linux. Apabila dalam praktiknya menggunakan Visual Studio maka
otomatis akan menggunakannya juga dan pada akhirnya malas untuk mencoba sistem operasi yang lain.
– Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit sekali.
– “susah” untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam memperdalam Programming akhirnya harus kandas
kecuali dengan inisitif sendiri mempelajari bahasa/teknologi lain.

Tidak ada komentar:

Posting Komentar