Perbedaan Bahasa C dan C++
Perbedaan Bahasa C dan C++ – Bahasa pemrograman C dan C++ tergolong sebagai bahasa programan tingkat tinggi, Bahasa C dikembangkan oleh Dennis Ritchie di Bell Telephone Laboratories pada tahun 1972. Bahasa ini merupakan bahasa pengembangan / turunan dari bahasa B yang ditulis oleh Ken Thompson pada tahun 1970 yang diturunkan dari bahasa sebelumnya yaitu BCL. Sedangkan bahasa C++ diciptakan oleh Bjane Stroustrup di AT&T Bell Laboratories pada tahun 1980.
Bahasa C merupakan bahasa pemrograman prosedural, di mana penyelesaian terhadap sebuah persoalan dilakukan dengan membagi-bagi persoalan selanjutnya ke di dalam sub-sub persoalan yang lebih kecil. Sedangkan C++ adalah bahasa pemrograman yang punyai sifat Object Oriented Programming (OOP).
Untuk menyelesaikan sebuah persoalan C++ melakukan cara pertama dengan mendeskripsikan class-class yang merupakan a.-class yang dibuat sebelumnya sebagai abstraksi dari objek-objek fisik. Class selanjutnya berisi kondisi objek, kemampuan dari objeknya dan anggota-anggotanya. Setelah dibikin sebagian class, persoalan dipecahkan manfaatkan class. Perbedaan selanjutnya mampu kita memandang langsung melalui susunan pemrogramannya.
Perbedaan Bahasa C dan C++
1. Tipe Data Boolean
Bahasa C
Tipe boolean atau logika adalah tipe data yang merepresentasikan nilai true (benar) atau false (salah). Bahasa C tidak dapat mendeskripsikan style spesifik untuk menampung nilai-nilai tersebut. Oleh karenanya saat menggunakan bahasa C seorang programmer kebanyakan merepresentasikan nilai true bersama dengan nilai tidak cuman 0 (biasanya bersama dengan nilai 1), sedangkan nilai false direpresentasikan bersama dengan nilai 0. Pada kebanyakan para programmer C mendeskripsikan gaya logika melalui pembuatan makro maupun gaya enumerasi.
Bahasa C++
Bahasa pemrograman C++ mendefinisikan tipe boolean untuk menampung nilai true (benar) atau false (salah).
2. Tipe Data String
Bahasa C
Bahasa C tidak memiliki tipe data string, sehingga string didefinisikan sebagai array of char.
Bahasa C++
Sedangkan pada bahasa pemrograman C++ kita dapat menggunakan tipe data string.
3. Exception handling
Bahasa C
Exception handling adalah teknik menjebak error atau penanganan kesalahan, Pemrograman dalam bhs c sendiri belum menunjang teknik ini, menjadi seumpama kita menulis kode dalam bhs c dan terdapat error pada kode kita maka kita wajib menelusuri urutan program dan menguji satu per satu fungsi yang diperkirakan membawa dampak error.
Bahasa C++
Bahasa C++ merupakan bahasa pemrograman pertama yang menggunakan sistem exception handling, sehingga jika terjadi error program akan menghentikan proses dan mencari solusi kesalahan yang tepat sesuai kesalahan yang terjadi.
4. Paradigma Pemrograman (Prosedural VS Object Oriented)
Bahasa C
Bahasa C hanya mendukung paradigma pemrograman prosedural dalam pengembangan kode.
Bahasa C++
Bahasa C++ disebut bahasa hybrid karena mendukung paradigma pemrograman prosedural dan paradigma pemrograman berorientasi objek.
5. Sudut pandang terhadap Data, Prosedur dan Fungsi
Bahasa C
Pada Bahasa C (karena merupakan bahasa pemrograman prosedural), data, prosedur dan manfaat adalah entitas yang terpisah dan bebas.
Bahasa C++
Pada Bahasa C++ (digunakan sebagai bahasa pemrograman berorientasi objek), data, prosedur dan fungsi dikemas bersama dalam bentuk sebuah objek.
6. Dukungan Terhadap Polymorphisme, Inheritance dan Enkapsulasi
Bahasa C
Bahasa C tidak memiliki dukungan untuk melakukan Polymorphisme, Inheritance dan Enkapsulasi.
Bahasa C++
Sebaliknya, bahasa C++ mendukung pemrograman berorientasi objek, oleh karena itu Bahasa C++ memiliki dukungan untuk melakukan Polymorphisme, Inheritance dan Enkapsulasi.
7. Fungsi dan Operator Overloading
Bahasa C
Bahasa C tidak mendukung fungsi dan operator overloading.
Bahasa C++
Bahasa C ++ mendukung fungsi dan operator overloading.
8. Fungsi dalam Struktur
Bahasa C
Bahasa C tidak bisa melakukan fungsi yang harus didefinisikan di dalam struktur.
Bahasa C++
Dalam Bahasa C ++, fungsi dapat digunakan di dalam struktur.
9. Manipulasi data oleh Kode Luar
Bahasa C
Dalam Bahasa C, data entitas atau variabel dapat dimanipulasi oleh kode luar. Hal tersebut karena C tidak mendukung informasi bersembunyi (private / protected).
Bahasa C++
Dalam Bahasa C++, Penggunaan Encapsulation untuk menyembunyikan data dapat memastikan bahwa struktur data dan operator hanya digunakan sebagaimana yang telah diprogram.
10. Penulisan Namespace
Bahasa C
Bahasa C tidak menggunakan namespace.
Bahasa C++
Dalam Bahasa C++ kita perlu menggunakan namespace untuk memperpendek code program.
11. Dukungan terhadap Variabel Referensi
Bahasa C
Bahasa C tidak mendukung variabel referensi.
Bahasa C++
Bahasa C++ mendukung adanya variabel referensi.
12. Dukungan terhadap Fungsi Virtual
Bahasa C
Bahasa C tidak mendukung fungsi virtual. Fungsi virtual adalah fungsi yang mendukung adanya polymorphic function, artinya fungsi tersebut dapat di definisikan ulang pada kelas turunanya. Fungsi virtual biasanya terdapat pada kelas dasar.
Bahasa C++
Bahasa C++ memiliki dukungan terhadap fungsi virtual.
13. Standard Template Library
Bahasa C
Bahasa C tidak mendukung penggunaan Standard Template Library (STL)
Bahasa C++
Bahasa C++ mendungkung penggunaan STL, STL (Standard Template Library) merupakan kumpulan fungsi-fungsi dan data-data khusus yang banyak digunakan untuk struktur data. Dengan adanya STL seorang programmer tidak perlu lagi coding dari nol.
Gabung dalam percakapan