Minggu, 15 Maret 2009

Kisah ku belajar C++

Categori : pemrograman

Judul : belajar bahasa C++ episode 1

Kisahku belajar pemrograman C++

OK kawan-kawan semua, sekarang aku akan menceritakan kisah aku belaja bahasa pemrograman C++. Kenapa C++ sih? Itukan primitive ! kenapa enggak JAVA? Yang udah modern, dan kayaknya perkembangannya bakal pesat dan menjanjikan.

Tapi yah mau gimana lagi, habis ini juga kepaksa sih, sebenarnya saya gak suka, tapi karena tuntutan mata kuliah PBO, kepaksa deh belajar bahasa C++, padahal aku itu lebih sukanya ke design, kalo pemrograman lebih suka ke web programming, tapi tak apalah, gak ada salahnya kan….???

Okeh kawan-kawan semua, sebenarnya ini Cuma kisah, bukan tutorial yah, jadi tolong jangan salah kaprah, saya bukan so jago ato apalah, lagian saya sendiri baru belajar, hehehe…jadi kalo ada yang salah mohon koreksinya yah.

Sebelum belajar bagai mana dan seperti apa itu bahasa C++ saya sama dosen saya dikenalin dulu sejarahnya bahasa C++.

Yah kira kira sejarah cerita C++ itu seperti ini lah:

Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T BellLaboratories pada awa l1980an sebagai pengembangan dari bahasa C. Pada awalnya bahasa C++ itu dekanl sebagai “C with classes” dan bahasa C++ itu sendiri digunakan sejak tahun 1983 yang diusulkan oleh Rick Marcitti. Kemudian pada tahun 1985 bahasa ini mulai disebarluaskan oleh AT&T dengan mengeluarkan perangkat lunak cfront yang berfungsi sebagai C++ translator.

Perancangan bahasa C++ itu sendiri didasarkan pada bahasa C, Simula67, Algol68, dan Ada. Loh kok bias? Yah gak tahu lah saya jug abaca dari buku. “trus buktinya apa?”, nah buktinya di bahasa C++ ka nada konsep “class”, nah konsep itu diambil dari bahasa Simula67. Selain itu ada juga yang lainnya, misalnya konsep “operator overloading” yang diambil dari bahasa Algol68 serta konsep “template” dan “exception” yang diambil dari bahasa Ada.

Lalu apa kelebihannya bahasa C++? Kan mirip-mirip dengan C tuh?

Nah kawan-kawan sekalian, bahasa C++ itu memperluas kemampuan daripada bahasa C dalam beberapa hal yaitu :

1. Memberikan dukungan untuk menciptakan dan memanfaatkan abstraksi data.

2. Memberikan dukungan untuk object-oriented programming (OOP).

3. Memperbaiki beberapa kemampuan yang sudah ada pada bahasa C

Naha pada point 3 dikatakan bahwa C++ memberikan dukungan untuk OOP, mungkin karena itu dosen aku ngasih materi C++, padahal yang jelas-jelas OOP yah JAVA kan (kalo gak salah, maklum aku kan gak tahu).

Trus apa bedanya antara bahasa C dan C++?

OK sekarang aku kasih tau yah perbandingnnya bahasa C dan C++, yaitu diantaranya adalah dalam hal :

1. Komentar

2. Input dan output

3. Deklarasi variable

4. Perubahan tipe

5. Reference

6. Function overloading

7. Nilai default parameter formal

8. Tag name

9. Anonymous union

10. Kompatibilitas antara C++ dan C

Eits…sory guys… saya gak akan menjelaskan perbandingannya seperi apa, karena saya bukan seseorang yang berhak menjelaskan hal itu, saya yakin kawan-kawan pasti lebih tahu. Oleh karena itu kita lansung aja peraktek yuk.

OK sekarang saya akan ngasih contoh yang paling sederhana mungkin yah, karena dosen saya ngasihnya yah seperti itu waktu di lab, coba ajah temen-temen coba program di bawah ini.

//lesson01

//program standar (minimal)

main()

{

return 0;

}

Kata dosen aku itu adalah program sederhana, berikutnya aku dikasih lagi lesson yang ke-2 seperti di bawah ini.

//program standar (minimal)

void main()

{

}

Sepertinya itu juga masih gak ada apa-apanya yah, okeh kita langsung ke lesson 03, yang ini baru mulai berasa ada taste nya nih.

//lesson03

//program output

#include

main()

{

cout <<"Hallo Dunia" <<>

cout <<"Ilkom"<<>

cout <<"UPI" <<>

cout <<"Selamat belajar !!" <<>

return 0;

}

Gak puas jug sama yang itu, nih aku di kasih lagi lesson04, yang kalo menurut aku mulai menantang sih.

//lesson04

//program input

#include

int panjang;

int lebar;

int luas;

main()

{

//input

cout <<"Masukan panjang : ";

cin >>panjang;

cout <<"Masukan lebar : ";

cin >>lebar;

//proses

luas = panjang * lebar;

//output

cout <<"Luasnya : " <

return 0;

}

Waduh nih dosen ngasih materi tambah susah juga yah, tapi yah namanya juga belajar, yah aku terima ajah deh, kalo lesson kali ini lebih pusing lagi ane nih, kalian pusing gak?? Eh iya, lesson01 sampe lesson04 udah bias belom? Paham gak sih? Gak paham yah? Sama aku juga gak pahamah pokoknya ikutin ajah apa yang disuruh, gue juga lieeeuurrrr…cing….nih ada lagi lesson05 yang tambah lieuuurrrrr….

//lesson05

//program class sederhana

#include

#include

class tubuh

{

//data member

private:

int tinggi;

int berat;

int kulit; //0=putih, 1=hitam, 2=coklat

//function member

public:

void set_tinggi(int new_tinggi)

{ tinggi=new_tinggi; }

void set_berat(int new_berat)

{ berat=new_berat; }

void set_kulit(int new_kulit)

{ kulit=new_kulit; }

int get_tinggi() { return tinggi; }

int get_berat() { return berat; }

int get_kulit() { return kulit; }

};

main()

{

//clear screen

//clrscr();

//instansiasi

tubuh t1;

tubuh t2;

t1.set_tinggi(170);

t1.set_berat(65);

t1.set_kulit(2);

t2.set_tinggi(165);

cout < <<>

cout < <<>

cout < <<>

cout < <<>

cout < <<>

cout < <<>

return 0;

}

Masih belum ngerti juga yah?? Sama aye juga kagak ngati nih, pucing dah kepala ane, yang ntu ja belum ngarti, eh ada lagi lesson06 nih, tambah sutres pala ene nih dikasih kayak ginian.

//lesson06

//program class dengan konstruktor

#include

#include

class cat

{

//data member

private:

int umur;

int berat;

public:

//konstruktor

cat() {} //default = 0 parameter

cat(int new_umur)

{umur = new_umur;} //1 parameter

cat(int new_umur, int new_berat)

{umur = new_umur;

berat = new_berat;}

//function member;

void show_attribut()

{

cout <<"Umur :" <<>

cout <<"Berat :" <<>

}

void meow()

{

cout <<"Meong !!!" <<>

}

};

main()

{

//clear screen

clrscr();

//instansiasi

cat c1;

cat c2(3);

cat c3(2,5);

c1.show_attribut();

c2.show_attribut();

c3.show_attribut();

c3.meow();

return 0;

}

Aduh udah deh, hari dah semakin sore nih, kapan kelas ini bubar sih, kepala ane udah kagak tahan nih, aduh enya…babeh…engkong, mamih….papih… bunda….ayah….

Anakmu kagak tahan lagi nih, waduh bodo amat sih loe jadi orang yah, kapan loe bias pinter kalo males buat belajar, hahahah…. Nih masih ada lesson berikutnya cing….

//lesson07

//program class dengan konstruktor

#include

#include

class waktu {

public:

//konstruktor

waktu() {};

waktu(int new_jj, int new_mm)

{

jj = new_jj;

mm = new_mm;

}

waktu(int new_jj, int new_mm, int new_dd)

{

jj = new_jj;

mm = new_mm;

dd = new_dd;

}

//destruktor

~waktu()

{

cout <<"destruktor auto execute on terminate" <

}

//function member

void add_menit();

int get_jam();

int get_menit();

int get_detik();

void show();

//data member

private:

int jj;

int mm;

int dd;

};

void waktu::add_menit()

{

mm ++;

if (mm>59)

{

mm = 0;

jj++;

}

}

int waktu::get_jam()

{ return jj;}

int waktu::get_menit()

{ return mm;}

int waktu::get_detik()

{ return dd;}

void waktu::show()

{ cout <

main()

{

//clear screen

clrscr();

//inisialisasi

waktu bangun;

waktu makan(11,50);

waktu tidur(22,58,30);

cout <<"Waktu bangun" <

bangun.show();

cout <<"Waktu makan" <

makan.show();

cout <<"Waktu tidur" <

tidur.show();

cout <<"Waktu tidur + 2 menit" <

tidur.add_menit();

tidur.add_menit();

tidur.show();

return 0;

}

Haduh kayaknya perut ane udah mual nih, ngelitnya ajah udah pengen muntah dah, tapi ane kagak menyerah gitu ajah ampe akhirnya ane nyelesein lesson yang terakhir di kelas praktikum kali ini, nih lesson terakhir di pertemuan kali in icing.

//LESSON08

//PROGRAM CLASS DENGAN STRING

#include

#include

#include

class pegawai

{

char nama[30];

int usia;

char alamat[100];

long gaji;

public:

//konstruktor

pegawai() {};

void set_nama(char*new_nama)

{ strcpy(nama, new_nama);}

void set_usia(int new_usia)

{ usia = new_usia;}

void set_alamat(char*new_alamat)

{ strcpy(alamat, new_alamat);}

void set_gaji(long new_gaji)

{ gaji = new_gaji;}

char* get_nama()

{ return nama;}

int get_usia()

{ return usia;}

char* get_alamat()

{ return alamat;}

long get_gaji()

{ return gaji;}

};

void main()

{

//clear screen

clrscr();

//instansasi

pegawai p1;

p1.set_nama("Mr.Adnan");

p1.set_alamat("Jln.Setia Budhi No.58 Bandung");

p1.set_usia(30);

p1.set_gaji(500000);

cout <

cout <

cout <

cout <

}

Kagak ngeti jug acing??

Sama aye juga kagak ngarti, padahal baru mulei nih, aduh sekarang jangan males-males kayak ane yah, entar nyesel lagi, padahal ane males banget praktikum, tapi kada dosen PBO gue, kalo gak praktikum entak kagak noleh ikut UTS ma UAS, waduh mampus deh, kayaknya semester ini adalah semester yang berat buat ane, aduh cing, semangat yah…ayo belajar, masa depan bangsa ada di tangan kita para pemuda penerus bangsa ini, maju teruspandang mundur ah, hatur nuhun ka sadayana nya cing, aduh cing cape euy…geus magrib yeu, mandi trus solat trus nyari dahareun ah, truss are deh, hahahahaha…

To be continue….

Note : ini bukan karya tulis, atau tutorial atau training, tapi ini kisah nyata yang saya tulis berdasarkan fakta, tapi dari kisah saya ini, saya harap bias membantu buat anda yang mau belajar bahasa pemrograman C++.

Tidak ada komentar:

Posting Komentar