Jumat, 11 Juni 2010

Sejarah C dan C++

Sejarah C dan C++

C++ adalah bahasa pemrograman yang berada pada tingkat tengah antara bahasa pemrograman tingkat rendah(mendekati bahasa mesin) dan bahasa pemrograman tingkat tinggi(mendekati bahasa manusia). Karena itu C++ cocok untuk berbagai platform sehingga mudah untuk membuat program pada berbagai macam mesin.

Bahasa C++ adalah pengembangan dari bahasa C yang diciptakan oleh Brian W. Kernighan dan Dennis M.Ritchie pada tahun 1972. Diciptakan sebagai bahasa pemrograman yang membagi program atas sejumlah blok. Hal ini berguna untuk memudahkan pembuatan dan pengembangan program. Program yang ditulis menggunakan bahasa C bisa dipakai pada banyak jenis mesin karena telah memenuhi standarisasi bahasa C yaitu standar ANSI (American National Standard Institute).

Baru setelah satu dekade lahirlah C++ di tangan Bjarne Stroustrup, Laboratorium Bell, AT&T pada tahun 1983 yang kompatibel dengan C dan bernama "a better C". Lalu oleh Rick Mascitti diganti namanya menjadi C++ pada musim panas 1983 yang diilhami dari nama operator penaikan pada bahasa ini.

Bahasa ini mendukung pemrograman berorientasi obyek(PBO) atau dalam bahasa Inggris disebut Object Oriented Programming(OOP). Namun meskipun demikian, sebenarnya C++ adalah bahasa yang bersifat hybrid, bukan bahasa murni yang berorientasi obyek. Programmer C yang akan berpindah ke C++ harus bertahap. Pustaka – pustaka pada C tetap dapat dipakai di C++, dibaurkan dengan program PBO.

Tujuan utama pembuatan C++ adalah untuk meningkatkan produktivitas programmer dalam membuat aplikasi. Mayoritas pakar setuju bahwa PBO dan C++ mengurangi kerumitan, khususnya program besar yang terdiri dari 10.000 baris atau lebih. C++ dapat meningkatkan produktivitas programmer lebih dari dua kali dibandingkan dengan bahasa prosedural seperti C, Pascal, dan BASIC. Hal ini diakibatkan oleh kemudahan program yang ditulis pada C++ untuk digunakan kembali pada program – program lain. Meskipun demikian, para programmer yang sedang mulai belajar C++ malah akan menurun produktivitasnya karena harus mempelajari karakteristik C++. Akan tetapi ini adalah hal yang wajar.

Kamis, 10 Juni 2010

Beberapa Istilah dalam C++

Fungsi Anggota, Metode, Data, Variabel Instans

Pada bahasa berorientasi obyek, data yang dimiliki obyek disebut variable instans. Pada C++, istilah yang dipakai adalah data atau anggota data. Sedangkan fungsi yang melekat pada obyek disebut fungsi anggota(member function). Fungsi ini merupakan cara untuk mengakses anggota data dari obyek. Untuk membaca suatu anggota data, Anda harus memanggil fungsi anggota. Dengan kata lain, data bersifat tidak bisa diakses oleh fungsi – fungsi di luar fungsi anggota.

Istilah yang umum untuk fungsi anggota pada bahasa pemrograman berorientasi obyek yaitu metode(misalnya pada SmallTalk). Adapun pemanggilan fungsi anggota sering disebut pengiriman pesan ke obyek. Namun istilah yang terakhir ini jarang digunakan pada C++.

PBO

C++

Variabel instans

Data(anggota data)

Metode

Fungsi anggota

Obyek dan kelas

Dalam terminology PBO(Pemrograman Berorientasi Obyek) obyek sebenarnya adalah anggota dari kelas(class). Jadi, kelas adalah kumpulan dari beberapa obyek yang sama. Sebagai analogi hal ini, Anda barangkali mengenal nama – nama seperti George W.Bush, John F.Kennedy, Barrack Obama. Ya, mereka adalah presiden - presiden USA yang sangat terkenal. Secara sendiri – sendiri, mereka dapat diibaratkan sebagai objek. Adapun "presiden" menyatakan kelas.

3. Polymorphism(polimorfisme)

Polymorfisme adalah suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda. Istilah ini berasal dari Bahasa Yunani, yang mempunyai arti "mempunyai banyak bentuk".

Salah satu jenis polimorfisme pada C++ adalah pada fungsi atau operator atau dikenal dengan istilah overloading. Sebagai contoh, anda dapat membuat suatu fungsi bernama gambar. Kalau anda hanya menyertakan posisi x dan y saja maka yang digambar adalah titik. Kalau yang disertakan adalah dua titik x dan y, maka hasilnya berupa garis. Adapun kalau yang disertakan adalah posisi x dan y serta jari – jari, yang digambar adalah lingkaran.

Karakteristik PBO

Tiga karakteristik PBO adalah:

1. Encapsulation(pengkapsulan)

Pengemasan data dan fungsi dalam wadah bernama obyek dikenal dengan sebutanEncapsulation(pengkapsulan). Data tidak lagi diperlakukan sebagai komponen kedua setelah fungsi, melainkan mempunyai kedudukan yang sama dengan fungsi.

2. Inherintance(pewarisan)

Inherintace(pewarisan) merupakan sifat dalam bahasa berorientasi obyek yang memungkinkan sifat – sifat dari suatu kelas diturunkan ke kelas lain. Analogi dalam dunia nyata misalnya pada Kambing. Kambing sebagai kelas mempunyai sifat antara lain :

- Dapat menggonggong

- Berkaki empat

Apabila pinky adalah kambing, maka pinky juga memiliki sifat – sifat umum dari kambing. Tetapi tentu saja, Pinky bisa mempunyai sifat yang lain, misalnya pendiam dan lucu.

Jumat, 04 Juni 2010

Contoh Fibonacci di Alam

Desain Kelopak Bunga pada Beberapa Jenis Bunga

Mungkin kita sama sekali belum atau bahkan tidak pernah memperhatikan dengan seksama bagaimana desain kelopak bunga yang tumbuh di sekitar kita. Namun jika kita mau melakukannya dan memikirkan manfaatnya maka kita akan menemukan hal yang mencengangkan karena banyak dari ribuan jenis bunga yang memakai bilangan Fibonacci dalam desain jumlah kelopaknya. Hal ini dengan catatan yang perlu diteliti adalah bunga yang masih memiliki semua kelopak secara utuh, tidak kehilangan satu kelopak pun. Jadi masih sesuai dengan aslinya.

Berikut daftar beberapa bunga yang memiliki kelopak bunga sesuai dengan deret angka Fibonacci:

1. Bunga satu kelopak

  • Lili Putih


  • 2. Bunga tiga kelopak

  • Lili








  • Iris



2. Bunga 5 kelopak :

  • Buttercup

  • Columbine(Aquilegia)




3. Bunga 8 kelopak :
  • Delphiniums


4. Bunga 13 kelopak :
  • Cineraria

5. Bunga 21 kelopak :

  • Black-eyed Susan

  • Chicory

6. Bunga 34 kelopak :
  • Plaintain, Pyrethrum
7. Bunga 55, 89 kelopak : Aster Michaelmas, keluarga Asteraceae

Jumlah kelopak bunga dari beberapa spesies sangat tepat dengan angka Fibonacci misalnya Buttercups, tetapi jenis yang lain jumlah kelopaknya hanya mendekati angka rata - rata dalam Fibonacci.