di OBJECT ORIENTED PROGRAMMING [OOP] Oleh H. SUMIJAN, Ir, M.Sc

Slides:



Advertisements
Presentasi serupa
Pemrograman Berorientasi Objek
Advertisements

Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
By : Rizky Yuniar Hakun. Konsep Pemrograman Berorientasi Object.
OBJECT ORIENTED PROGRAMMING in JAVA
BAB III – CLASS (1) DIKTAT PBO Oleh: Adam Mukharil B. S.Kom.
Desain Sistem By Hendro Joko Prasetyo, M.Kom.
Pemrograman Lanjut Ratnokustiawan.wordpress.com.
DIKTAT PBO Oleh: Adam Mukharil B. S.Kom. BAB I – KONSEP PBO.
Pemrograman Berorientasi Objek
Konsep Berbasis Object (Object-Oriented Concept)
7 Rekayasa Sistem Konsep Utama OOP Dedy Alamsyah, S.Kom.
UPI CONVENTION CENTER [UPI-CC] UNIVERSITAS PUTRA INDONESIA “ YPTK “ UPI CONVENTION CENTER [UPI-CC] UNIVERSITAS PUTRA INDONESIA “ YPTK “ PADANG, 08 Agustus.
Konsep Pemrograman Berorientasi Objek
Encapsulation, Inheritance, polymorphism, dan interface
BAB 1 KONSEP OOP.
Pemrograman Berorientasi Objek
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
Class, Inheritance, Encapsulation & Interface
Pemrograman Berorientasi Obyek Oleh Tita Karlita
ALGORITMA DAN PEMROGRAMAN 2C MATERI MINGGU KE-2 Pengenalan Teknik-teknik Bahasa Pemrograman Henny Medyawati.
Class.
OBJECT ORIENTED PROGRAMMING YANES HARDIANTO SUI Politeknik Manufaktur Astra 2011.
Object Oriented Programming with JAVA 2011/2012
OBJECT-ORIENTED PROGRAMMING (OOP)
OOP pada pemrograman Web
CLASS, OBJECT METHOD, PROPERTIES Object Oriented Programming
1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
INHERITANCE (Oleh : Nur Hayatin, S.ST)
Universitas Respati Yogyakarta
Firman Asharudin | Pemrograman Lanjut
11. Konsep Berbasis Object (Object-Oriented Concept)
OBJEK dan KELAS Sutrisno PTIIK-UB.
Inheritance dan Kata Kunci static
Pemograman Berorientasi Objek
Intro to OOP Yesi Novia, S.Kom.
BAB ENCAPSULATION ( Enkapsulasi )
POLYMORPHISM.
Pemprograman berorientasi objek
KELOMPOK 9 ROBBY SETIAWAN AKBAR BAI ALIM WASSAHUA
Enkapsulasi, Accessor Method, Mutator Method
KONSEP OOP INHERITANCE (PEWARISAN) Encapsulation (enkapsulasi)
Pertemuan 9 Pemrograman Berbasikan Objek
Membuat Kelas.
Object Oriented Programming
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding PBO.
Array, Class, Obyek, Method danConstructor.
Dasar-dasar Pemrograman Objek dg Java
Pemrograman Berorientasi Objek
ANALISA & DESAIN BERORIENTASI OBJEK
Bina Sarana Informatika
Pemrograman Berorientasi Objek
PEMROGRAMAN BERORIENTASI OBJEK
Testing Dan Implementasi Sistem
ISTILAH-ISTILAH PENTING PEMROGRAMAN BERBASIS OBYEK
(Object Oriented Programming)
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding Pemrograman.
Pemrograman Berorientasi Obyek
Array, Class, Obyek, Method danConstructor.
Konsep Berorientasi Objek
TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT (OOP)
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
Perkembangan Teknik Pemrograman
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding PBO.
DPH1C4 Pemrograman berorientasi Obyek
FONDASI PEMROGRAMAN & STRUKTUR DATA #4 - 1
Bahasa Pemrograman (Pemrograman Visual)
Transcript presentasi:

di OBJECT ORIENTED PROGRAMMING [OOP] Oleh H. SUMIJAN, Ir, M.Sc UPI CONVENTION CENTER [UPI-CC] UNIVERSITAS PUTRA INDONESIA “ YPTK “ H. SUMIJAN, Ir, M.Sc PADANG, 08 Agustus 2012

KARAKTERISTIK OBJECT ORIENTED Objek Kelas Abstract Data Type / Tipe Data Abstrak Instantiation / Instansiasi Inheritance / Inheritas / Pewarisan Encapsulation / Enkapsulasi Abstraction / Abstraksi Polymorphism / Polimorfisme

KARAKTERISTIK OBJECT ORIENTED Abstraksi, prinsip untuk merepresentasikan dunia nyata yang komplek menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan. Enkapsulasi, pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai obyek, untuk menyembunyikan implementasi dari obyek sehingga obyek lain tidak mengetahui cara kerjanya Pewarisan (inheritance), mekanisme yang memungkinkan suatu obyek (kelas) mewarisi sebagian atau seluruh definisi dari obyek lain sebagai bagian dari dirinya.

KARAKTERISTIK OBJECT ORIENTED Reusability, pemanfaatan kembali obyek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnya yang melibatkan obyek tersebut. Generalisasi dan spesialisasi, menunjukan hubungan antara kelas dan obyek yang umum dengan kelas dan obyek yang khusus. Komunikasi antar obyek, dapat dilakukan lewat pesan (message) yang dikirim dari satu obyek ke obyek lainnya. Polymorphism, kemampuan suatu obyek untuk digunakan dibanyak tujuan yang berbeda dengan nama yang sama sehingga dapat menghemat pemakaian baris program.

TENTANG OBJECT Segala sesuatu yang ada. Objek terdiri dari attribute / state dan behaviour / event. Attribute adalah segala ciri atau sifat yang melekat pada objek. Behaviour adalah perilaku / perbuatan / aksi / kejadian yang dapat dilakukan / diterima oleh objek. Contoh: anjing, kucing, manusia, meja, dsb. Attr & behav dari contoh tsb adalah???

TENTANG CLASS Cetakan / template / blue print dari objek. Kelas mendefinisikan attribute (diwujudkan dalam bentuk field / variable global [variable yang melekat pada kelas, bukan pada sebuah method / fungsi / prosedur]) dan behaviour (diwujudkan dalam bentuk method / prosedur / fungsi) dari objek dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object.

TENTANG CLASS Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.

ABSTRACT DATA TYPE Adalah tipe data tertentu yang didefinisikan oleh pemrogram untuk kemudahan pemrograman serta untuk mengakomodasi tipe-tipe data yang tidak secara spesifik diakomodasi oleh bahasa pemrograman yang digunakan. Dalam OOP kita dapat mendefinisikan tipe data baru. Dapat berisi attribute saja, behaviour saja maupun keduanya. ADT diwujudkan dalam kelas – kelas buatan programmer sesuai dengan kebutuhan / keinginan programmer. Singgung tipe data primitive!

ABSTRACT DATA TYPE

INSTANTIATION Adalah proses penciptaan objek berdasarkan kelas yang ada. Sama dengan pembuatan variable berdasar kelas tertentu. Biasanya ditandai dengan penggunaan kata kunci “new”. Contoh: A a = new A();

INHERITANCE Pewarisan attribute dan behaviour sebuah kelas kepada kelas yang lain. Contoh real: seorang anak memiliki anggota tubuh (mata, rambut) yang sama / mirip (bentuk, warna, etc) dengan orang tuanya, pewarisan DNA, etc.

INHERITANCE

INHERITANCE

INHERITANCE

INHERITANCE

INCAPSULATION Pembungkusan attribute atau behaviour sehingga tidak dapat diganti secara sembarangan dengan cara yang tidak seharusnya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.

INCAPSULATION Manfaat dari proses enkapsulasi adalah : Modularitas: Kode sumber dari sebuah objek dapat dikelola secara independen dari kode sumber objek yang lain. Information Hiding: Karena kita dapat menentukan hak akses(public, private, protected, default) sebuah variabel/method dari objek, dengan demikian kita bisa menyembunyikan informasi yang tidak perlu diketahui objek lain.

ABSTRACTION Berbagai objek yang sejenis dapat memiliki behaviour yang sama namun berbeda implementasinya. Sebagai contoh, objek anjing sama – sama memiliki behaviour menggonggong namun suara gonggongan anjing berbeda – beda. Inilah yang mendasari abstraksi pada OOP. Pada OOP sebuah kelas dapat mendefinisikan behaviour yang sama secara abstract yang kemudian dapat diimplementasikan secara berbeda pada saat digunakan.

POLYMORPHISM Kata polimorfisme berarti satu objek dengan banyak bentuk yang berbeda Adalah konsep sederhana dalam pemrograman berorientasi objek yang berarti kemampuan dari suatu variabel referensi objek untuk memiliki aksi berbeda bila method yang sama dipanggil, dimana aksi method tergantung dari tipe objeknya. Menciptakan berbagai macam bentuk yang berbeda dari sebuah kelas yang sama. Proses ini dilakukan melalui proses pewarisan.

POLYMORPHISM

POLYMORPHISM public class Time1 { private: int hour, int minute, int second; public: void Time1() { settime(0,0,0); } void Time1(h) { settime(h,0,0); } void Time1(h,m) { settime(h,m,0); } void Time1(h,m,s) { settime(h,m,s); } };

CLASS DAN OBJECT Class Creation: Object Creation / Instantiation: class <name> { } Object Creation / Instantiation: <Class Name> <object name> = new <Class Constructor>;

CONSTRUCTOR Adalah sebuah method yang otomatis akan dipanggil setiap kali melakukan instansiasi terhadap suatu kelas dan digunakan untuk melakukan inisialisasi nilai dari data – data yang terdapat di dalam kelas yang bersangkutan. Namanya == nama kelas. Tidak ada return type sama sekali. Jika tidak dideklarasikan == use default

class Manager: public Pegawai { char KodeJabatan[10]; class Pegawai { private : char NIP[13]; char Nama[100]; char Gol[15]; double GaPok; public: void Input_Data() { cout << "Input Data Pegawai"<<endl; cout << "NIP :";cin>>NIP; fflush(stdin); cout << "Nama :";cin>>Nama; cout << "Golongan [II/A] :";cin>>Gol; cout << "Gaji Pokok Rp:";cin>>GaPok; GP=GaPok; } void Cetak_Data() cout << "Informasi Data Pegawai"<<endl; cout << "NIP :" << NIP << endl; cout << "Nama :" << Nama << endl; cout << "Golongan [II/A] :" << Gol << endl; cout << "Gaji Pokok Rp:" << GaPok << endl; }; class Manager: public Pegawai { char KodeJabatan[10]; char NamaJabatan[45]; double Tunjangan; public: void Input_Data() { Pegawai::Input_Data(); cout << "Kode Jabatan :";cin>>KodeJabatan; cout << "Nama Jabatan :";cin>>NamaJabatan; cout << "Besar Tunjangan Rp:";cin>>Tunjangan; } void Cetak_Data() Pegawai::Cetak_Data(); cout << "Kode Jabatan :" << KodeJabatan << endl; cout << "Nama Jabatan :" << NamaJabatan << endl; cout << "Besar Tunjangan Rp:" << Tunjangan << endl; cout << "Gaji Total Rp:" << Tunjangan+GP << endl; };

cout << "Menu Pilihan "<<endl; { case '1': P1.Input_Data(); break; case '2': M1.Input_Data(); case '3': P1.Cetak_Data(); case '4': M1.Cetak_Data(); case '5': exit(1); default: cout << endl << "Anda Salah Pilih [1..5]"<<endl; } void main() { char pil='0'; Pegawai P1; Manager M1; clrscr(); cout << "Menu Pilihan "<<endl; cout << "[1].Input Data Pegawai"<<endl; cout << "[2].Input Data Manager"<<endl; cout << "[3].Tampil Data Pegawai"<<endl; cout << "[4].Tampil Data Manager"<<endl; cout << "[5].Exit (Kalua)"<<endl; while (pil!='5') cout << "Pilahan Anda [1..5]";cin>>pil; switch (pil)

OVERLOADING Adalah mendefinisikan method yang memiliki nama yang sama, tetapi dengan signature (data type parameter & parameter number) yang berbeda dalam definisi class yang sama. Constructor == method  bisa dioverload (see previous sample)

OVERLOADING

NEXT DASAR-DASAR MYSQL PEMROGRAMAN BERORIENTASI OBYEK (PBO)