Minggu, 24 Februari 2013

C++



Bahasa pemrograman C/C++ merupakan bahasa yang popular didalam
pengajaran pada computer sains maupun pada kalangan programmer yang
mengembangkan system software maupun aplikasi.
Bahasa C/C++ sifatnya portable, karena compilernya tersedia hampir
pada semua arsitektur computer maupun system operasi, sehingga investasi
waktu dan tenaga yang anda lakukan dalam mempelajari bahasa pemrograman
ini memiliki nilai strategis yang sangat menjanjikan.
Bahasa C/C++ merupakan bahasa yang sangat ketat dalam pemakaian
type data maupun penulisannya yang case sensitif, hal ini berarti programmer
di tuntut kedisiplinannya dalam penulisan program.
Sesuatu fasilitas yang tersedia dalam C/C++ yang tidak ditemukan pada
bahasa pemrogaman lainnya adalah pointer, dengan pemanfaatan pointer
programmer dapat melakukan manipulasi memori secara langsung.
Dewasa ini beberapa bahasa yang memiliki syntax penulisan yang
menyerupai C/C++ adalah Java, Javascript dan PHP, yang artinya bahwa
kemampuan pemrograman dengan C/C++ akan mempermudah anda untuk
mempelajari bahasa modern seperti Java maupun C# (dibaca C sharp).


C Plus Plus
C++ (dibaca sebagai "see plus plus"; aslinya dikenal sebagai: C with Classes) adalah
suatu bahasa pemrograman komputer yang telah diperluas dengan kemampuan object
oriented. Sejak 1990, C++ merupakan bahasa pemrograman komersil yang paling
populer.

History of C++
Stroustrup mulai bekerja dengan bahasa ini pada tahun 1979, diinspirasi oleh Simula67.
AT&T pertama kali menggunakan bahasa tersebut pada Agustus 1983. Compiler aslinya
adalah C front. Dikomersialisasikan pertama kali pada bulan Oktober. Suatu gabungan
komite standarisasi C++ ANSI-ISO, pada tahun 1998 (ISO/IEC 14882-1998).
ANSI standard adalah suatu usaha untuk memastikan bahwa C++ adalah portable—
dimana kode yang anda tulis pada Microsoft compiler akan dapat dikompilasi tanpa
kesalahan dengan menggunakan kompiler dari vendor lain pada platform yang berbeda
seperti Mac, Window dan Alpha.

Technical Overview
Pada tahun 1998 C++ Standard terdiri dari dua bagian yaitu: Core Language dan
Standard Library; yang meliputi Standard Template Library dan C Standard Library.

History of the Name "C++"
Nama ini bermula dari Rick Mascitti (pertengahan tahun 1983) dan pertama kali
digunakan pada Desember 1983. Awalnya, sejak periode riset, disebut sebagai "C with dari suatu variabel) dan suatu konvensi penamaan umum menggunakan "+" untuk
menunjukan pengembangan program komputer, misalnya "dBase3+".

Ownership of C++
Tidak ada yang memiliki C++. Stroustrup dan AT&T tidak menerima royalti dari
pemakaian C++.

C++ Examples
Contoh 1
Berikut ini adalah sebuah contoh dari program dimana tidak melakukan apa-apa. Terdiri
dari satu hal yaitu: sebuah main() fungsi. main() merupakan awal dari program C++.
int main() {
return 0;
}
Standard C++ membutuhkan main() mengembalikan type int, dalam hal ini 0 artinya
program berakhir normal.
Example 2
Berikut ini adalah contoh dari program Hello world
#include <iostream> // needed for std::cout
int main() {
std::cout << "Hello World !\n";
return 0;
}

C++ Library
[[C++ standard library]] umumnya berupa superset dari C standard library. Sebagian
besar bagian dari library C++ adalah terdiri dari Standard Template Library (STL). STL
menyediakan fasilitas berguna seperti iterators (merupakan high-level dari pointer) dan
containers (menyerupai array yang dapat bertumbuh secara otomatis pada saat
penambahan elemen baru). Sebagaimana dalam C, fasilitas dari library dapat diakses
dengan menggunakan direktif #include untuk memasukan suatu standard header. C++
menyediakan enam puluh sembilan header standard.
C++ merupakan superset dari C artinya semua program C yang legal juga merupakan
program C++ yang legal, perkembangan dari C ke C++ adalah sangat nyata. C++
memetik banyak keuntungan dari hubungannya dengan C, dimana programmer C dapat
dengan mudah menggunakan C++. Untuk dapat menggunakan keunggulan C++, banyak
programmer menemukan bahwa mereka tidak perlu mempelajari hal-hal yang mendasar,
tetapi cukup mengembangkan diri dengan mempelajari konsep baru (OOP) dalam
pemecahan masalah pemrograman.

Future Development
C++ terus berevolusi untuk memenuhi kebutuhan masa depan, ketika pembuat-pembuat
compiler masih berjuang untuk mendukung semua fasilitas C++, situasi tersebut
berkembang persisnya dari tahun 1998 sampai 2003.

C++ and Object-Oriented Programming (OOP)
C++ secara penuh mendukung konsep OOP, termasuk empat pilar dari pengembangan
OOP yaitu : encapsulation, data hiding, inheritance, and polymorphism.
OPP berkaitan erat dengan Abstract Data Type (ADT).
Pada konsep pengembangan OOP, awal dari pengembangan program adalah mencoba
memodelkan permasalahan yang dikenal sebagai abstraction yang digambarkan sebagai
berikut :

Pada model merupakan suatu pandangan abstrak terhadap permasalahan. Dalam hal ini
model hanya terfokus pada permasalahan dimana :
Data apa saja yang terpengaruh
Operasi apa yang perlu dilakukan
Misalnya ketika seorang dosen ingin membuat laporan hasil ujian, maka data yang perlu
adalah Nim, Nama, Nilai, dan operasi yang dilakukan adalah mentotalkan, dan
menghitung nilai rata-rata.
Suatu ADT terdiri dari suatu struktur data abstrak dan operasi-operasi, hanya operasioperasi
yang dapat dilihat dari luar sebagai interface (antar muka), sedangkan detail
proses disembunyikan dari pemakai.

 

Encapsulation dan Data Hiding
Prinsip menyembunyikan dengan mengunakan struktur data dan hanya menyediakan
operasi-operasi untuk interface dengan luar dikenal sebagai encapsulation dan data
hiding.
Data hiding merupakan karakteristik yang bernilai tinggi dari yang dapat digunakan oleh
suatu objek tanpa diketahui oleh user bagaimana kerja internal dari objek tersebut. Anda
dapat membayangkan objek itu sebagai suatu mobil, dimana untuk bisa mengendari
mobil, anda tidak perlu mengetahui bagaimana kerja internal dari mobil tersebut, yang
penting anda dapat menyetir, masuk gigi, menambah kecepatan, dan menghentikan.
Class pada C++ mengambarkan suatu ADT, dimana terdiri dari properti dan metoda
sebagai interface.

Hubungan antara Object dan Class
Object merupakan instance dari Class, beberapa object dapat berasal dari Class yang
sama, tetapi memiliki properti yang berbeda-beda.
Pada pembuatan program OOP, dimulai dengan pembuatan Class, dan pada saat runtime
akan dibuat instance dari Class sebagai Objek, jadi program tersebut berjalan sebagai
objek-objek dimemori komputer.
Objek-objek dalam program akan berkomunikasi antara satu dengan yang lain
menggunakan pengiriman message.

Inheritance
Salah satu keunggulan dari OOP adalah isu pemanfaatan kembali. Dengan inheritance
tugas pemrograman dapat dipemudah. Suatu class yang telah dikembangkan dapat
disempurnakan dengan mengembangkan child class (sub class) yang merupakan
inheritance dari parent class (super class).
Pada inheritance semua properti dan metode dari super class akan tersedia untuk diakses
oleh sub class.
Inheritance menyerupai pengembangan produk baru pada suatu perusahaan, dimana
engineer tidak perlu membuat produk baru dari awal, tetapi dengan mengacu pada produk
yang telah ada, dan dilakukan penambahan dan perbaikan.

Overriding
Dalam melakukan inheritance terhadap suatu parent class, kadang-kadang pada sub class
kita perlu mendefinisi ulang metoda. Dari hal inilah istilah overriding muncul, dimana
overriding adalah mengubah implementasi suatu metoda pada super class di sub class.

Polymorphyms
Pada polymorphyms, suatu variabel dengan type super class dapat digunakan untuk
mengacu terhadap sub class yang merupakan inheritance dari super class tersebut.

Tidak ada komentar:

Posting Komentar