1 / 34

Pemrograman Berorientasi Obyek (C++)

Pemrograman Berorientasi Obyek (C++). Departemen Ilmu Komputer FMIPA IPB 20 1 3. C++. C diambil sebagai landasan dari C++ Mendukung Pemrograman Berorientasi Obyek (PBO) Bersifat Reusability (kemudahan untuk digunakan kembali pada program-program lain) Ditulis dengan ektensi .CPP

marcin
Download Presentation

Pemrograman Berorientasi Obyek (C++)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pemrograman Berorientasi Obyek (C++) Departemen Ilmu KomputerFMIPAIPB 2013

  2. C++ • C diambil sebagai landasan dari C++ • Mendukung Pemrograman Berorientasi Obyek (PBO) • Bersifat Reusability (kemudahan untuk digunakan kembali pada program-program lain) • Ditulis dengan ektensi .CPP • .CPP + .H → dikompile .OBJ • Dengan file obyek lain + .LIB → dikaitkan menjadi satu oleh linker → file executable (.EXE)

  3. Pemrograman Berorientasi Obyek obyek Data/Atribut Fungsi Anggota/Method Fungsi Anggota/Method

  4. Objek dan Kelas • Dalam PBO → obyek adalah anggota dari kelas (class) • Contoh: class : Penyanyi Jazz obyek : Al Jarreau, Salena Jones, Michael Frank class : Mahasiswa objek : G64076001, G64076010, G64076030

  5. Karakteristik PBO • Tiga karakteristik utama PBO: • Encapsulation : pengemasan data dan fungsi dalam wadah bernama obyek. Data memiliki kedudukan yang sama dengan fungsi. • Inheritance sifat dalam bahasa berorientasi obyek yang memungkinkan sifat-sifat dari suatu kelas diturunkan ke kelas lain • Polymorphism sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda

  6. Kompiler C++ • Microsoft Corporation : Microsoft C/C++ dan Visual C++ • Borland International : Turbo C++ dan Borland C++

  7. Tipe data

  8. #include <iostream> using namespace std; int main() { char kar; kar = 'A'; cout << "Isi Kar = " << kar << "\n"; int bil; bil = 32763; cout << "Isi Bil = " << bil << "\n"; long jum_penduduk; jum_penduduk = 170123456; cout << "Jumlah Penduduk = " << jum_penduduk << "\n"; float flo; flo = 1.23e2; cout << "Isi Flo = " << flo << "\n"; int jumlah = 10; cout << "Isi Jumlah = " << jumlah << "\n"; system("PAUSE"); return 0; }

  9. Class Departemen Ilmu KomputerFMIPAIPB 2013

  10. Struktur dan Kelas • Kelas merupakan struktur data dari obyek • Struktur (struct) memiliki persamaan dengan kelas (class). • Contoh struktur (deklarasi struktur) struct Buku { char judul[35]; char pengarang[25]; int jumlah; }; • Contoh class (deklarasi kelas) Format : class Buku { char judul[35]; char pengarang[25]; int jumlah; }

  11. Mendefinisikan/create suatu variable (struct) atau obyek (class) Buku novel; • Kebanyakan pemrograman C++ menggunakan nama kelas dengan awalan huruf kapital

  12. Contoh Struct

  13. Contoh Class

  14. Access Specifier (Public) • public: digunakan agar baris coding yang ada di bawahnya dapat diakses dari luar kelas class Buku { char judul[35]; … } class Buku { public : char judul[35]; … } Secara bawaan hanya dikenal oleh kelas buku (identik dengan private) Public menyebabkan anggota yang ada di bawahnya dikenal di luar kelas Buku

  15. Contoh Class - Public

  16. Access Specifier (Private) • private: digunakan pada kelas untuk memproteksi anggota-anggota tertentu pada kelas, agar tidak dapat diakses di luar kelas secara langsung • Pada contoh diatas public: → private: • Kata kunci private dapat ditiadakan karena secara default dari kelas adalah private • Private pada kelas dapat diibaratkan dengan suatu klub yang hanya diperuntukkan bagi anggotanya saja.

  17. Contoh Class - Private

  18. OOP • Pada pemrograman berorientasi obyek, data dan fungsi harus dirancang secara bersamaan Misal, terdapat data: • Judul buku • Nama pengarang • Jumlah buku pada awal perancangan harus dipikirkan fungsi-fungsi dasar yang digunakan untuk mengakses ketiga data tersebut. Fungsi-fungsi tersebut dapat berupa • Mengisikan data • Manampilkan data • Manipulasi/Update data

  19. Next !

  20. Mendefinisikan beberapa obyek • Buku novel, fiksi; • Jika terdapat lebih dari satu obyek dan obyek-obyek tersebut memiliki kelas yang sama, data anggota pada masing-masing obyek bersifat terpisah • Assignment nilai antar obyek (hanya untuk data anggota yang tidak mengandung pointer) fiksi = novel;

  21. Deklarasi kelas sama dengan slide 20

  22. Alternatif penulisan fungsi anggota • Cara mendefinisikan fungsi anggota • Fungsi anggota didefinisikan di dalam deklarasi kelas • Pada kelas hanya terdapat deklarasi fungsi anggota (protototipe), sedangkan definisi fungsi anggota ditempatkan di luar kelas • Pada Cara 2 void Buku :: inisialisasi (char *Judul, char *Pengarang, int Jumlah) { strcpy(judul, Judul); strcpy(pengarang, Pengarang); jumlah=Jumlah; }; Nama kelas Nama fungsi anggota Return value Nama anggota data kelas Buku

  23. main program sama dengan slide 20 atau 22

  24. Konstruktor dan Destruktor Departemen Ilmu KomputerFMIPAIPB 2013

  25. Konstruktor • Konstruktor adalah fungsi anggota yang mempunyai nama yang sama dengan nama kelas dan dijalakan secara otomatis saat suatu obyek diciptakan • Konstruktor tidak memiliki nilai balik • Konstruktor harus diletakkan pada bagian public • Fungsi: • Mengalokasikan ruang bagi sebuah obyek • Memberikan nilai awal terhadap anggota data suatu obyek • Membentuk tugas umum lainnya

  26. Contoh Class - Konstruktor Next !

  27. Contoh Class - Konstruktor

  28. Destruktor • Destruktor adalah fungsi anggota kelas yang akan dijalankan secara otomatis pada saat suatu obyek akan dihapus (dealokasi) • Nama destruktor sama seperti konstruktor, hanya saja diawali dengan karakter tak hingga/tilde (~)

  29. Contoh Class – Konstruktor Destruktor

  30. Contoh Class – Konstruktor Destruktor

  31. Konstruktor dengan Argumen

  32. Konstruktor, Destruktor dan Pengalokasian Dinamis

  33. Latihan • Lakukan analisis terhadap Sistem Informasi Akademik (SIMAK) yang Anda ketahui • Buatlah class diagram dari SIMAK tersebut • Implementasikan class diagram tersebut dengan menggunakan C++ (jika perlu, berikan/gunakan contoh sederhana untuk memperjelas hasil implementasi Anda)

More Related