Pemograman berorientasi obyek kelompok 6

29
5

Transcript of Pemograman berorientasi obyek kelompok 6

5

4

3

2

1

TENTANG

PEMROGRAMAN BERORIENTASI

OBYEK (PBO)

AZMI RIZALAISYAH DWI LESTARI

SYAFRIZAL FEBRIANTO

PENGANTAR TEKNOLOGI INFORMAsi

A.Pemrograman berorientasi objek (PBO)

Pemrograman berorientasi objek (Inggris: object-oriented

programming disingkat OOP) merupakan paradigma pemrograman

yang berorientasikan kepada objek. Semua data dan fungsi di dalam

paradigma ini dibungkus dalam kelas-kelas atau objek-objek.

Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat

menerima pesan, memproses data, dan mengirim pesan ke objek

lainnya.

Pemrograman berorientasi objek adalah merupakan sebuah metode

yang digunakan untuk mendapatkan solusi dari suatu masalah melalui

perspektif object. Object ini memiliki atribut dan method yang

digunakan bersama dengan object yang lain sehingga menghasilkan

solusi untuk sebuah permasalahan.

Page 1

1.Perbedaan PBO dan

Pemrograman Berorientasi Objek

Pada pemrograman berorientasi object memungkinkan kita membagi-bagi permasalah

berdasarkan object-oject yang terlibat. mendefinisikan peran masing masing objek

dalam proses penyelesaian masalah. Sehingga dapat diambil suatu pokok dasar bahwa

titik berat pemrograman berorientasi object adalah pembagian tanggung jawab kepada

masing masing object dan bukan pembagian berdasarkan proses kerja.

Bahasa pemrograman yang mendukung OOP antara lain:

• Visual Foxpro

• Java

• C++

• Pascal (bahasa pemrograman)

• Visual Basic.NET

• SIMULA

• Smalltalk

• Ruby

• Python

Page 2

• PHP

• C#

• Delphi

• Eiffel

• Perl

• Adobe Flash AS 3.0

B.Pemrograman Procedural

Pada pemrograman prosedural secara mendasar adalah

metode pemrograman yang mengeluarkan perintah yang

akan dieksekusi oleh komputer. Secara garis besarnya

pemrograman prosedural menitik beratkan penyelesaian

berdasarkan urutan-urutan proses kerja. Pemrograman

Procedural adalah suatu proses untuk mengimplementasikan

urutan langkah untuk menyelesaikan suatu masalah dalam

bentuk program. Selain pengertian diatas Pemrograman

Procedural adalah suatu aktifitas pemrograman dengan

memperhatikan urutan langkah-langkah perintah secara

sistematis, logis.Page 3

Bahasa pemrograman yang mendukung pemrograman terstruktur:

• Cobol Turbo Prolog

• C

• Pascal

Perbedaan Pemrograman Prosedural dengan

Pemrograman Berorientasi Object

Bagaimana kita membedakan mana yang pemrograman prosedural dan

mana yang pemrograman berorientasi object. Berikut sekilas

perbedaannya :

Page 4

• Delphi

• Borland Delphi

A.Pengertian objek dalam PBO

Objek dalam PBO yaitu Membungkus data dan fungsi bersama

menjadi suatu unit dalam sebuah program komputer. Objek merupakan

dasar dari modularitas dan struktur dalam sebuah program komputer

berorientasi objek.

B.Objek dan Kelas

Objek yaitu Membungkus data dan fungsi bersama menjadi

suatu unit dalam sebuah program komputer. Objek merupakan dasar

dari modularitas dan struktur dalam sebuah program komputer

berorientasi objek.

Kelas yaitu Kumpulan atas definisi data dan fungsi-fungsi 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.

Page 5

2.Konsep Dasar PBO

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.

Page 6

C.Abstraksi

Abstraksi adalah Kemampuan sebuah program untuk melewati

aspek informasi yang diproses olehnya, yaitu kemampuan untuk

memfokus pada inti. Setiap objek dalam sistem melayani sebagai

model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan

perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam

sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan.

Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa

teknik digunakan untuk mengembangkan sebuah pengabstrakan.

Sebagai contoh, orang tidak perlu berpikir bahwa mobil adalah

kumpulan dari puluhan atau ribuan bagian-bagian kecil (mesin, kabel,

baut, roda, rem, dsb).

Page 7

Contoh abstraksi dalam model pemrograman berorientasi

objek, kita sebagai programmer atau pengembang program

tidak perlu tahu secara detail bagaimana cara membuat

sebuah tombol, yang perlu kita ketahui adalah bagaimana

cara menggunakan objek tombol yang sudah ada (baik

data/propeti maupun method-nya). dalam kasus ini, si

pembuat objek telah mengabstraksikan semua proses yang

berkaitan dengan pembuatan tombol.

Page 8

D.Enkapsulasi

Enkapsulasi adalah Memastikan pengguna sebuah objek tidak

dapat mengganti keadaan dalam dari sebuah objek dengan cara yang

tidak layak; hanya metode dalam objek tersebut yang diberi izin untuk

mengakses keadaannya.

E.Inheritansi

Inheritance/Inheritansi adalah salah satu konsep utama dalam

Pemrograman Berorientasi Objek. Inheritance memperbolehkan

penggunaan kembali kode-kode yang ada pada Base Class nya untuk

diturunkan pada Derived Class. Class baru disebut Derived Class

sedangkan class awal disebut Based Class. Inheritance ini diawali

dengan mendefinisikan superclass,

Page 9

F.Polimorfisme

Melalui pengiriman pesan. Tidak bergantung kepada

pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan;

metode tertentu yang berhubungan dengan sebuah pengiriman pesan

tergantung kepada objek tertentu di mana pesa tersebut dikirim.

Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan

menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan

yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya

menjawab sebuah pesan yang sama, namun yang sesuai dengan

kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah

variabel tungal dalam program dapat memegang berbagai jenis objek

yang berbeda selagi program berjalan, dan teks program yang sama

dapat memanggil beberapa metode yang berbeda di saat yang berbeda

dalam pemanggilan yang sama.Page 10

Page 11

3.Aplikasi dasar PBO

A.Abstraksi dengan objek dan kelas1).Abstraksi

Abstraksi adalah kemampuan sebuah program untuk

melewati aspek informasi yang diproses olehnya, yaitu

kemampuan untuk memfokus pada inti. Setiap objek

dalam sistem melayani sebagai model dari "pelaku"

abstrak yang dapat melakukan kerja, laporan dan

perubahan keadaannya, dan berkomunikasi dengan objek

lainnya dalam sistem, tanpa mengungkapkan bagaimana

kelebihan ini diterapkan. Proses, fungsi atau metode

dapat juga dibuat abstrak, dan beberapa teknik digunakan

untuk mengembangkan sebuah pengabstrakan.

Page 12

3.Aplikasi dasar PBO

2).Objek

Objek adalah entitas dasar saat runtime. Pada saat kode

program di eksekusi, objek berinteraksi satu sama lain

tanpa harus mengetahui detil data atau kodenya. Interaksi

antar objek ini dilakukan menggunakan suatu message.

a. Menciptakan Objek

Untuk menciptakan sebuah objek, maka operator yang

digunakan adalah operator “new”.

Contoh class ck = new contohclass (argumen);

atau

getData (new Contohclass());

Page 13

3).Class

Class merupakan bentuk logis yang menjadi landasan bangun seluruh

bahasa pemograman berorientasi object. Class mendefinisikan bentuk

dan perilaku object. Class sungguh sangat penting di Java. Class adalah

template/prototype yang mendefinisikan type object. Class merupakan

sarana pengkapsulan kumpulan data dan metode-metode yang

beroperasi pada kumpulan data. Data dan metode untuk mendefinisikan

isi dan kamampuan object. Class adalah cetakan object. Object harus

merupakan instan suatu Class. Class digunakan untuk menciptakan

banyak object. Object-object dari Class yang sama mempunyai data

sendiri tapi berbagi implementasi metode dengan object-object lain di

satu Class. Class dapat merupakan realisasi/implementasi abstraksi di

domain persoalan.

Page 14

Dalam Java, class modifier terdiri dari:

a).Public

Apabila suatu kelas (class) dideklarasikan sebagai public,

maka kelas tersebut akan bisa digunakan oleh kelas lain

maupun (termasuk dari lingkungan luar) tanpa

memperhatikan apakah kelas lain tersebut bearasal dari paket

(package) yang sama atau tidak

Page 15

b).Abstract

Apabila suatu kelas (class) dideklarasikan sebagai abstract,

maka kelas tersebut tidak akan bisa diwujudkan (instanced)

menjadi suatu object. Kelas ini disusun dari satu atau lebih

metode abstrak (abstract methods) , artinya method-method

dalam kelasi ini dedeklarasikan akan tetapi tanpa badan

(tidak diimplementasikan).

Terdapat batasan-batasan dalam penggunaan kelas abstract,

yaitu kelas abstract tidak bisa dibuat untuk mendeklarasikan

contructor (karena memang tidak ada contructor yang

abstrak), static method (demikian juga tidak ada static

method yang abstract) dan juga private method (tidak ada

private method yang abstract)

Page 16

c).Final

Apabila suatau kelas (class) dideklarasikan sebagai final,

maka kelas tersebut tidak akan bisa diturunkan lagi menjadi

kelas turunan yang lain. Dengan kata lain sudah selesai atau

berakhir (final). Tujuannya adalah untuk mencegah perluasan

yang tidak diinginkan.

Page 17

B.Enkapsulasi dengan Modifier

1)Enkapsulasi/Pengkapsulan (Encapsulation)

Enkapsulasi adalah pembungkus,maksud pembungkus

disini adalah untuk menjaga suatu proses program agar tidak

dapat di akses secara sembarangan atau intervensi oleh

program lain.

Konsep enkapulasi sangat penting dilakukan untuk menjaga

kebutuhan program agar dapat di akses sewaktu waktu

sekaligus menjaga program tersebut.

Page 18

B.Enkapsulasi dengan Modifier

2)Modifier

Access Modifier terdiri dari private, protected, dan

public.

Private memberikan hak akses hanya kepada anggota class

tersebut untuk menggunakan dan/atau mengubah nilai dari

property atau method tersebut.

Protected memberikan hak akses kepada anggota class nya

dan anggota class hasil inheritance (penurunan sifat) dari class

tersebut.

Public memberikan hak akses kepada property dan method

agar dapat digunakan diluar class tersebut.

Page 19

C. Inheritansi dengan subkelas

Inheritansi (Penurunan Sifat)Berbicara mengenai Inheritance berarti berbicara

bagaimana satu kelas dapat diturunkan dari kelas lainnya.

Misalkan saja Karyawan pada perusahaan bisa banyak. Ada

yang bekerja sebagai marketing dan ada pula yang bekerja

sebagai programmer.

Page 20

subkelas

Sebuah kelas dibentuk dari metode dan data.Metode

merupakan sekumpulan perintah /pernyataan ,sedangkan data

member dapat berupa data primitive atau data sederhana yang

berupa referensi ke objek lain.Sebuah kelas dapat digunakan

untuk membuat atau menurunkan (inherit) kelas lain

,sehingga membentuk struktur hierarki.Kelas yang berada

pada level heirraki bawah mewarisi sifat-sifat (metode dan

data ) dari kelas heirarki

Page 21

D. Polimorfisme dengan inheritansi

1).Polimorfisme

Polimorfisme sesuatu yang memiliki banyak bentuk.

Dalam pemrograman, polimorfisme dapat diartikan

sebagai modul yang memiliki nama sama, namun

memiliki behaviour (tingkah laku) yang berbeda

sehingga listing code implementasinya juga berbeda

Page 22

2).Inheritancea. Definisi

Mengatur polimorfisme dan enkapsulasi

dengan mengijinkan objek didefinisikan dan

diciptakan dengan jenis khusus dari objek yang

sudah ada, objek-objek ini dapat membagi dan

memperluas perilaku mereka tanpa haru

mengimplementasi ulang perilaku tersebut (bahasa

berbasis-objek tidak selalu memiliki inheritas.

Page 23

b. Cara kerja

Prinsip dasar inheritas yaitu persamaan-persamaan yang

dimiliki oleh beberapa kelas dapat digabungkan dalam sebuah class

induk sehingga setiap kelas yang diturunkannya memuat hal-hal yang

spesifik untuk kelas yang bersangkutan. setelah menciptakan sebuah

objek. Kita dapat menggunakannya sebagai fondasi untuk objek yang

sama yang memilliki perilaku atau karakteristik sama. Semua objek

berasal dari atau yang saling berhubungan bisa membentuk suatu

kelas. Masing-masing kelas memuat instruksi khusus (method) yang

unik untuk kelompok tersebut. Kelas bisa diatur dalam hierarki-kelas

atau subkelas. Pewarisan adalah metode untuk mewariskan ciri dari

suatu objek dari kelas ke subkelas dalam hierarki. Jadi objek yang baru

dapat diciptakan dengan mewariskan ciri dari kelas yang sudah ada.