Selasa, 18 Oktober 2011

PENGERTIAN TENTANG C++


2.1. Sejarah C++
Gambar 1.1. foto Ken Thompson dan Martin Richard
C merupakan pengembangan dari bahasa pemrograman B yang disusun oleh Ken Thompson pada tahun 1970 untuk mesin DEC PDP-7 yang menggunakan sistem operasi UNIX. Bahasa pemrograman B itu sendiri diadaptasikan dari bahasa pemrograman BCPL (Basic Combined Programming
Language) yang disusun oleh Martin Richards tahun 1967. C disusun oleh Dennis M. Ritchie pada tahun 1972. Tidak lama setelah itu, C diimplementasikan oleh Ritchie dalam menuliskan kembali sistem operasi UNIX yang sebelumnya
ditulis dalam bahasa Assembly DEC PDP-11. Pada mulanya C banyak dipakai untuk pemrograman sistem di laboratorium laboratorium penelitian dan universitas-universitas di Amerika Serikat. Standar acuan yang digunakan adalah standar yang dikeluarkan bersama sistem operasi UNIX System 5 dan dijabarkan dalam buku The C Programming Language oleh Brian W. Kernighan dan Dennis M. Ritchie (Prentice-Hall, 1978). Acuan ini dikenal dengan sebutan K&R Standard.
Kepopuleran C ini pada mulanya tidak dapat dilepaskan dari kepopuleran sistem operasi UNIX yang merupakan induk dan aplikasi utama pertamanya. Dalam waktu yang singkat C telah menggantikan pemrograman assembler dalam
lingkungan UNIX. Tetapi selanjutnya C berkembang ke arah status yang mandiri dan digunakan dalam pengembangan berbagai perangkat lunak aplikasi komersial. Banyak pula perusahaan-perusahaan lain yang mengembangkan kompilerkompiler C untuk lingkungan non-UNIX. Hingga awal tahun 80-an berbagai versi C untuk mikrokomputer telah banyak beredar di pasar perangkat lunak. Tidaklah salah jika dikatakan bahwa versi-versi C untuk mikrokomputer inilah yang memegang peranan yang cukup besar dalam menunjang kepopulerannya.
Di antara versi C untuk mikrokomputer yang umum dikenal adalah: Turbo C® dari Borland International, Microsoft® C dari Microsoft Corporation, Microsoft QuickC® juga dari Microsoft Corporation, LATTICE® C dari Lattice Incorporation, dan Eco-C™ dari Ecosoft Incorporation. Di lingkungan Linux, kompiler C yang lazim digunakan adalah GNU C, sebuah kompiler open source yang dapat digunakan secara bebas di bawah lisensi GNU Public Licence. Beragamnya versi C yang beredar di pasaran melatarbelakangi dibentuknya panitia standar X3J11 pada permulaan tahun 1983 oleh American National Standards Institute (ANSI®) untuk menyeragamkan definisi C. Panitia standararisasi ini selain mempertahankan sebanyak mungkin bentuk asli C yang terdapat dalam K&R C, juga memperbaiki dan menambah fungsionalitas bahasa yang tidak terdapat di dalam bentuk orisinilnya. Hasil kerja panitia standar X3J11
kemudian diterima pada bulan Desember 1989 dan dituangkan dalam draf standar ANSI C: Programming Language C.
Pada perkembangan selanjutnya, C diarahkan ke pemrograman berorientasi objek yang dikenal dengan nama C++, bahasa pemrograman yang dianggap sebagai superset C. Pemrograman berorientasi objek adalah metodologi
pemrograman yang menggunakan pendekatan enkapsulasi (pengkapsulan atau pembungkusan). Sebenarnya konsep enkapsulasi sudah sejak lama dikenal dalam ilmu computer karena pendekatan ini diperlukan untuk melakukan Pemrograman C di Lingkungan Linux 5 dekomposisi terhadap sistem-sistem yang besar menjadi subsub sistem dalam paket lebih kecil yang dapat lebih mudah dikembangkan, dipelihara dan dipindahkan. Bahasa-bahasa pemrograman dan sistem-sistem yang berorientasi-objek menerapkan konsep enkapsulasi itu dalam bentuk objek dan
kelas.
Konstruksi pemrograman berbentuk objek bermula dari Simula, sebuah bahasa untuk pemrograman simulasi komputer. Hal ini tidak mengherankan karena memodelkan objek-objek simulasi secara langsung sebagai objek perangkat lunak dapat dilakukan secara alamiah. Yang lebih mengherankan adalah bahwa objek-objek perangkat lunak itu bukan hanya dapat bermanfaat untuk pemrograman simulasi, tetapi juga untuk pengembangan prototyping dan aplikasi. Berdasarkan konsep kelas objek ini dikembangkan sebuah bahasa pemrograman yang bernama Smalltalk sebagai salah satu bahasa pemrograman pertama yang menerapkan konsep pemrograman berorientasi objek. Karena pemrograman berorientasi-objek terutama sekali dipopulerkan oleh upaya pengembangan Smalltalk, maka definisi yang banyak diterima orang tentang bahasa pemrograman berorientasi-objek adalah bahasa-bahasa yang mendukung kelas objek dan pewarisan kelas. Definisi lain yang lebih longgar tentang bahasa pemrograman berorientasi objek adalah setiap bahasa pemrograman yang menyediakan mekanisme untuk memanfaatkan enkapsulasi. Beberapa versi mikrokomputer untuk bahasa pemrograman C berorientasi objek yang pernah dan sedang beredar di pasaran di antaranya adalah: Turbo C++®, Zortech C®, Borland C/C++®, dan Microsoft® Visual C++.

2.2. Ruang Lingkup C++
Kepopuleran bahasa C membuat versi-versi dari bahasa ini banyak dibuat untuk komputer mikro. Untuk membuat verai-versi tersebut menjadi standar, ANSI (American Nation Standards Institue) membentuk suatu komite (ANSI committe X3J11) pada tahun 1983 yang kemudian menetapkan standar ANSI untuk bahasa C. Standar ANSI ini didasarkan kepada seluruh standar UNIX yang diperluas. Standar ANSI menetapkan sebanyak 32 buah kata-kata kunci (keywords) standar. Versi-versi bahasa C yang menyediakan paling tidak 32 kata-kata kunci ini dengan sintaks yang sesuai dengan yang detentukan oleh standar, maka dapat dikatakan mengikuti standar ANSI. Buku ajar ini didasarkan pada bahasa C dari standar ANSI.
Pada saat ini C merupakan bahasa pemrograman yang sangat populer di dunia. Banyak pemrograman yang dibuat dengan bahasa C seperti assembler, interpreter, program paket, sistem operasi, editor, kompiler, program bantu, Word Star, Dbase, aplikasi untuk bisnis, matematika, dan game, bahkan ada pula yang menetapkan untuk kecerdasan bantuan. Dalam beberapa literatur bahasa C digolongkan sebagai bahasa tingkat menengah. Penggolongan ke dalam bahasa tingkat menengah bukanlah berarti bahwa bahasa C lebih sulit dibandingkan bahasa tingkat tinggi seperti PASCAL atau BASIC. Demikian juga bahasa C bukanlah bahasa yang berorientasi pada mesin seperti bahasa mesin dan assembly. Pada kenyataan bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah. Kemudian dalam membuat program yang ditawarkan pada bahasa tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah merupakan tujuan diwujudkannya bahasa C.

2.3. Kelebihan dan Kelemahan C++
            Berikut adalah kelebihan dan kelemahan yang terdapat pada program bahasa C++ :

2.3.1. Kelebihan Bahasa C
1.      Merupakan induk dari bahasa pemrograman perl, php, phyton, visual basic,  gambas, java, C#.
2.      Compiler bahasa C++ terdapat di semua platform
3.      Untuk pengembangan visual dijejali dengan platform yang sangat banyak seperti OWL, MFC, Cocoa, QT, GTK, dll.
4.      Merupakan pemrograman berorientasi objek.
5.      Penanganan kompleksitas dengan OOP.
6.      Bahasa C++ tersedia hampir di semua jenis komputer.
7.      Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua jenis komputer.
8.      Bahasa C++ hanya menyediakan sedikit kata-kata kunci (hanya terdapat 48 kata kunci).
9.      Proses eksekusi program bahasa C++ lebih cepat. Dengan demikian, aplikasi yang dibuat dengan bahasa C++ akan menjadi aplikasi yang efisien dan kompetitif.
10.  Dukungan pustaka fungsi dan kelas yang banyak sehingga memungkinkan pembuatan aplikasi makro.
11.  C++ adalah bahasa yang terstruktur, dengan demikian akan lebih mendukung OOP.
12.  Bahasa C++ termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa mesin.
13.  Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan hanya menggunakan library dan file header.
14.  C++ dapat membuat aplikasi graphic processor berkualitas tinggi.

2.3.2. Kekurangan Bahasa C
1.      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.
2.      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.
3.      Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit sekali.
4.      "susah" untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam memperdalam Programming akhirnya harus kandas kecuali dengan inisitif sendiri mempelajari bahasa/teknologi lain.
5.      Bahasa ini cukup sulit untuk dipelajari dan dipahami.
6.      Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.
7.      Bagi pemula pada umumnya akan kesulitan menggunakan pointer.




Tidak ada komentar:

Posting Komentar

Komentar Anda sangat berguna untuk Saya ?!!