Object Oriented Programming 1

dokumen-dokumen yang mirip
BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN JAVA : KONSEP PEMROGRAMAN BERORIENTASI OBJEK

KONSEP Pemrograman Berorientasi Objek KARMILASARI

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Pemrograman Berorientasi Obyek. Konsep OOP

Konsep Pemrograman Berorientasi Obyek

MODUL 6. PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (II) dan STRING

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Konsep Pemrograman Berorientasi Obyek. Pertemuan 1

Konsep Pemrograman Berorientasi Obyek

BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

Konsep Pemrograman Berbasis Obyek

Pemrograman Berorientasi Obyek. Ramos Somya

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Mengenal Object Oriented Programming (OOP)

OBJECT ORIENTED PROGRAMMING

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Pemrograman Web Berbasis Framework. Pertemuan 2 : OOP Dalam Pemrograman Web. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

MODUL 4 ENCAPSULATION, INHERITANCE DAN POLYMORPHISM

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

PertemuanI. Object Oriented

PRAKTIKUM I Class dan Obyek

Pertemuan 11 Object Oriented Program

8 - Overriding dan Overloading

Inheritance (Pewarisan) Pengertian dasar inheritance

Pemrograman Berbasis Objek (Polimorfisme)

Bahasa Pemograman II. Object Oriented Programming

DEVAL GUSRION, S.KOM, M.KOM MATAKULIAH BAHASA PEMOGRAMAN JAVA LANJUTAN III

PEMROGRAMAN BERORIENTASI OBJEK

Object Oriented Programming (Class, Inheritance, Encapsulation dan Interface)

APLIKASI PERHITUNGAN GAJI PEGAWAI DENGAN JAVA Disusun untuk memenuhi tugas matakuliah Pemrograman JavaIII

KONSEP OBJEK ORIENTASI PROGRAM

IKG2I4 / Software Project I

BAB 1 PENGENALAN PEMROGRAMAN BERORIENTASI OBJEK

Object OOP. Polymor phism

MINGGU IV : PEMROGRAMAN BERORIENTASI OBJEK

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

Object OrientedProgramming

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP

Class. Object. Object Oriented Programming (OOP) Object Oriented Programming (OOP)

Pemograman Berorientasi Objek

MODUL 5 PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (I)

Bahasa Pemrograman 2.

MODUL VII PEMROGRAMAN BERORIENTASI OBJEK

Bahasa Pemrograman 2.

Pendahuluan Rekayasa Perangkat Lunak II. Alif Finandhita. Teknik Informatika UNIKOM

PRAKTIKUM OBJECT ORIENTED PROGRAMING

VISUAL BASIC Pengenalan VB NET

Pengenalan Obyek. Arna Fariza. Materi

REKAYASA PERANGKAT LUNAK II

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung

Tujuan KONSEP PEMROGRAMAN BERORIENTASI OBJECT. Bahasa Prosedural. Topik OOP. Apakah OBYEK? 3/15/2012

PEMROGRAMAN BERORIENTASI OBJEK. Nurochman

Bahasa Pemrograman :: Polimorfism and Abstraction

INHERITANCE. Gambar 1. Kelas Hierarki Java

UNIVERSITAS GUNADARMA

Object Oriented Programming LOGO

Pemrograman Berorientasi. Abstract & Interface

BAB III PERANCANGAN PROGRAM

Keyword this untuk memanggil private String pengarang; private String judul;

PERTEMUAN 11 KONSEP PEMROGRAMAN BERORIENTASI OBJEK

Covered Topics. Course Map OOP Concept

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

JOBSHEET 8 INHERITANCE (PEWARISAN)

Pengantar Pemrograman

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

PEMBUATAN APLIKASI PERHITUNGAN TRANSAKSI DENGAN JAVA

Pemrograman Berorientasi Objek

TUGAS AKHIR APLIKASI KALKULATOR BOLA BERBASIS JAVA

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Pemrograman Berorientasi. Inheritance

LAPORAN PERCOBAAN IV PEMBUATAN CALCULATOR ( MENGHITUNG GAJI KARYAWAN DAN TUNJANGANNYA) BERBASIS JAVA

LAPORAN RESMI INHERITANCE

Pemrograman Berorientasi

Pemrograman Berorientasi Obyek. Ramos Somya

Pewarisan atau Inheritance

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

Polymorphism (Polimorfisme)

PEMROGRAMAN JAVA. Yoannita. Konsep Pemrograman Berorientasi Objek. Company LOGO

Pemrograman Berorientasi. Class dan Obyek 2

ENKAPSULASI Data Hiding

PERANCANGAN BERORIENTASI OBJEK

INTERAKSI ANTAR OBJECT

Paradigma Pemrograman Berorientasi Objek

DASAR PEMROGRAMAN. Konsep Pemrograman Berorientasi Objek. Yoannita

STRUKTUR DENGAN ARRAY DAN FUNCTION

LAPORAN PERCOBAAN V ( APLIKASI NILAI MAHASISWA) BERBASIS JAVA

Transkripsi:

Object Oriented Programming 1 PEMROGRAMAN BERORIENTASI OBYEK Pemrograman beriorientasi obyek (Object Oriented Programming = OOP) berbeda dengan pemrograman konvensional pada umumnya, terutama dalam memperlakukan prosedur dan data. Pada pemrograman biasa, prosedur dan data merupakan dua hal yang dipisahkan satu sama lain. Definisi ini terdiri dari tiga data, dimana untuk mengelolanya dibutuhkan prosedur yang disusun pada bagian yang terpisah. Salah satu konsep OOP yang paling penting adalah membungkus prosedur dan data menjadi satu software obyek. Konsep ini disebut sebagai encapsulation. OOP memodelkan obyek yang ada di dunia nyata (real-word objects) ke dalam software obyek dalam pemrograman. Oleh karena itu, di dalam OOP juga dikenal istilah seperti yang ada pada obyek dunia nyata, yaitu pewarisan (inheritance), dimana suatu obyek dapat mewariskan sifat-sifat yang dimilikinya kepada obyek turunannya. Secara umum, beberapa keuntungan yang dapat diperoleh pada OOP antara lain adalah simplicity, modularity, modifiability, extensibility, flexibility, maintainability, dan reasonability. Bahasa pemrograman yang mendukung OOP antara lain adalah: Smalltalk (murni OOP), C++, CLOS (Common Lisp Object System), Java, Visual Basic, dll KONSEP PEMROGRAMAN BERORIENTASI OBJEK Konsep-konsep penting dalam pemrograman berorientasi objek yaitu : A. Objek (Object) Pada dasarnya semua benda yang ada di dunia nyata dapat dianggap sebagai sebuah objek. Jika perhatikan lebih lanjut, pada dasarnya ada dua karakteristik yang utama pada sebuah objek, yaitu : Setiap objek memiliki atribut sebagai status yang kemudian akan disebut sebagai state. Setiap objek memiliki tingkah laku yang kemudian akan disebut sebagai behaviour. Contoh sederhananya adalah : objek sepeda Sepeda memiliki atribut (state) : pedal, roda, jeruji, dan warna. Sepeda memiliki tingkah laku (behaviour) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda. Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku (behaviour) dalam method-method atau fungsi-fungsi/prosedur. page 1 / 7

contoh sintak Object yaitu pada pembuatan form untuk menampilkan data : Dim mhs as New Class1 ------------------------------ private sub command1_click() mhs.npm=me.txt_npm mhs.nama=me.txt_nama mhs.simpan contoh lain : B. Class Class berbeda dengan objek. Class merupakan prototipe yang mendefinisikan variabel-variabel dan method-method secara umum. Sedangkan objek pada sisi yang lain merupakan instansiasi dari suatu kelas. Class Module: Public npm as string Public nama as string Public sub simpan() form1.text1=npm form1.text2=nama page 2 / 7

C. Enkapsulasi (Encapsulation) Dalam sebuah objek yang mengandung variabel-variabel dan methodmethod, dapat ditentukan hak akses pada sebuah variabel atau method dari objek. Pembungkusan variabel dan method dalam sebuah objek dalam bagian yang terlindungi inilah yang disebut dengan enkapsulasi. Jadi, enkapsulasi dapat diartikan sebagai bungkusan ( wrapper ) pelindung program dan data yang sedang diolah. Pembungkus ini mendefinisikan perilaku dan melindungi program dan data yang sedang diolah agar tidak diakses sembarangan oleh program lain. 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 sebuah variabel/method dari objek, dengan demikian kita bisa menyembunyikan informasi yang tidak perlu diketahui objek lain. D. Inheritance Class dapat didefinisikan dengan referensi pada class yang lain yang telah terdefinisi. Inheritance merupakan pewarisan atribut dan method pada sebuah class yang diperoleh dari class yang telah terdefinisi tersebut. Setiap subclass akan mewarisi state ( variabel-variabel ) dan behaviour ( methodmethod ) dari superclass-nya. Subclass kemudian dapat menambahkan state dan behaviour baru yang spesifik dan dapat pula memodifikasi ( override ) state dan behaviour yang diturunkan oleh superclass-nya. Keuntungan dari inheritance adalah : Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada. Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum. Istilah dalam inheritance yang perlu diperhatikan : Extends Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass. Superclass Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak. Subclass adalah class anak atau turunan secara hirarki dari superclass. Super Keyword ini digunakan untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass. Methode Overriding Pendefinisian ulang method yang sama pada subclass. Dalam inheritance, method overriding berbeda dengan method overloading. Kalau method overriding adalah mendefinisikan kembali method yang sama, baik nama method page 3 / 7

maupun signature atau parameter yang diperlukan dalam subclass, kalau method overloading adalah mendefinisikan method yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama. contoh inheritance : Perhitungan luas pesegi panjang (panjang x lebar) dan luas persegi (sisi x sisi) Class Module : public bil1 as integer public bil2 as integer public hasil as double public sub proses() hasil=bil1 * bil2 end sub Sintak pada Form1/objek Dim l_pp as New Class1 Private sub command_click() l_pp.bil1=val(me.text1.text) l_pp.bli2=val(me.text2.text) l_pp.proses page 4 / 7

me.text3.text=l_pp.hasil E. Polimorfisme (Pholymorfism) Kata polimorfisme yang berarti satu objek dengan banyak bentuk yang berbeda, adalah konsep sederhana dalam bahasa 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. Kondisi yang harus dipenuhi supaya polimorfisme dapat diimplementasikan adalah : Method yang dipanggil harus melalui variabel dari basis class atau superclass. Method yang dipanggil harus juga menjadi method dari basis class. Signature method harus sama baik pada superclass maupun subclass. Method access attribute pada subclass tidak boleh lebih terbatas dari basis class. Contoh Polimorfisme Perhitungan Luas persegi dan luas lingkaran atau luas persegi panjang dan segitiga. Class Modul public bil as integer public hasil as double Public sub proses() hasil=bil * bil end sub Form1 (luas persegi) Dim pl as New Class1 page 5 / 7

private command1_click() pl.bil=val(me.text1.text) pl.proses me.text2.text=pl.hasil Form2 (luas lingkaran) Dim ll as New Class1 private command1_click() ll.bil=val(me.text1.text) ll.proses me.text2.text=pl.hasil * 3.14 F. Interface Pada Java juga dikenal konsep interface, yang merupakan device yang digunakan untuk komunikasi antar objek berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar objek tersebut. Definisi ini terdiri dari tiga data, dimana untuk mengelolanya dibutuhkan prosedur yang disusun pada bagian yang terpisah. Salah satu konsep OOP yang paling penting adalah membungkus prosedur dan data menjadi satu software obyek. Konsep ini disebut sebagai encapsulation. OOP memodelkan obyek yang ada di dunia nyata (real-word objects) ke dalam software obyek dalam pemrograman. Oleh karena itu, di dalam OOP juga dikenal istilah seperti yang ada pada obyek dunia nyata, yaitu pewarisan (inheritance), dimana suatu obyek dapat mewariskan sifat-sifat yang dimilikinya kepada obyek turunannya. Secara umum, beberapa keuntungan yang dapat diperoleh pada OOP antara lain adalah simplicity, modularity, modifiability, extensibility, flexibility, maintainability, dan reasonability. page 6 / 7

Bahasa pemrograman yang mendukung OOP antara lain adalah: Smalltalk (murni OOP), C++, CLOS (Common Lisp Object System), Java, dan sebagainya. PEMROGRAMAN BERORIENTASI OBYEK Pemrograman beriorientasi obyek (Object Oriented Programming = OOP) berbeda dengan pemrograman konvensional pada umumnya, terutama dalam memperlakukan prosedur dan data. Pada pemrograman biasa, prosedur dan data merupakan dua hal yang dipisahkan satu sama lain. page 7 / 7