• Tidak ada hasil yang ditemukan

Pengantar Pemrograman

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pengantar Pemrograman"

Copied!
18
0
0

Teks penuh

(1)

Pengant ar Pemrograman

Berorient asi Obj ek

Berorient asi Obj ek

-STRUKTUR

DATA-Muhammad Riza Hilmi, ST.

(2)

Pengant ar (1)

• Pem rogram an Terstruktur adalah suatu aktifitas pem rogram an den gan m em perhatikan urutan lan gkah-lan gkah perin tah secara sistem atis,

logis, dan tersusun berdasarkan algoritm a yan g sederhan a dan m udah dipaham i.

sederhan a dan m udah dipaham i.

• Pem rogram an Berorien tasi Objek (In ggris:

object-oriented program m in g disin gkat OOP)

m erupakan paradigm a pem rogram an yan g

berorien tasikan kepada objek, jadi sem ua data dan fun gsi di dalam paradigm a in i dibun gkus dalam kelas-kelas atau objek-objek.

(3)

Pengant ar (2)

• Perbedaan keduan ya adalah pada pem rogram an berorien tasi objek setiap objek dapat m en erim a pesan , m em proses data, dan m en girim pesan ke objek lain n ya.

• Sedan gkan un tuk pem rogram an terstruktur

• Sedan gkan un tuk pem rogram an terstruktur adalah sebuah cara pem rosesan data yan g

terstruktur (sistem atis) dalam an alisa, cara dan pen ulisan pem rogram an .

(4)

• Pem rogram an terstruktur un ggul dalam m elakukan pem rogram an sederhan a karen a lebih efisien dan lebih m udah dalam hal perawatann ya.

• Sem en tara itu pem rogram an berorien tasi objek m em liki beberapa keun tun gan seperti :

 Main ten an ce, program lebih m udah dibaca dan

Pengant ar (3)

 Main ten an ce, program lebih m udah dibaca dan dipaham i, dan pem rogram an berorien tasi obyek m en gon trol kerum itan program han ya den gan m en gijin kan rin cian yan g dibutuhkan un tuk program m er.

 Pen gubahan program (berupa pen am bahan atau pen ghapusan fitur terten tu) disesuaikan den gan keperluan berdasarkan objekn ya.

(5)

Apa it u OOP?

• Paradigm a pem rogram an yan g m em an dan g sistem yan g akan diban gun berdasarkan

objek objek yan g terlibat dan in teraksin ya dalam sistem .

• Sistem diban gun den gan m em buat objek objek

• Sistem diban gun den gan m em buat objek objek dan m en gin teraksikan n ya un tuk m en yelesaikan suatu pekerjaan .

• Fun gsi dan data m en jadi satu kesatuan yan g disebut sebagai Ob je ct

• Program adalah seran gkaian object yan g

(6)

Pemrograman Berorient asi Obj ek

• OOP berputar pada kon sep dari obyek yan g m erupakan elem en dasar dari program .

• Ilustrasin ya adalah

 Objek m obil m em pun yai atribut tipe tran sm isi, warn a dan m an ufaktur, m obil juga m em pun yai tin gkah laku berbelok, m en gerem dan berakselerasi.

 Cara yan g sam a pula kita dapat m en defin isikan perbedaan sifat dan tin gkah laku dari sin ga.

 Cara yan g sam a pula kita dapat m en defin isikan perbedaan sifat dan tin gkah laku dari sin ga.

Pada peran gkat lun ak, m en ggun akan atribut sebagai d a ta dan tin gkah laku sebagai m e th o d .

(7)

Class

• Kum pulan atas defin isi data dan fun gsi-fun gsi dalam suatu un it un tuk suatu tujuan terten tu.

Sebagai con toh 'class of dog' adalah suatu un it yan g terdiri atas defin isi-defin isi data dan fun gsi-fun gsi yan g m en un juk pada berbagai m acam

perilaku/ turun an dari an jin g.

• Class adalah suatu struktur dalam program yan g

• Class adalah suatu struktur dalam program yan g berisi satu atau beberapa m etode (dapat berupa fun gsi dan / atau prosedur) dan atribut (dapat berupa data ataupun variabel yan g akan

dipoerasikan dalam m etode).

• Den gan dem ikian atribut m erupakan an ggota kelas yan g bersifat statis, sedan gkan m etode m erupakan an ggota kelas yan g bersifat din am is.

(8)

Obj ect

• Setiap obyek diban gun dari sekum pulan data

(atribut) yan g disebut variabel un tuk m en jabarkan karakteristik khusus dari obyek, dan juga terdiri dari sekum pulan m ethod yan g m en jabarkan

tin gkah laku dari obyek.

• Bisa dikatakan bahwa obyek adalah sebuah

peran gkat lun ak yan g berisi sekum pulan variabel

• Bisa dikatakan bahwa obyek adalah sebuah

peran gkat lun ak yan g berisi sekum pulan variabel dan m ethod yg berhubun gan .

• Sebuah obyek adalah sebuah in stan ce (keturun an ) dari class.

(9)

Perbedaan Class dan Obj ect

• Misal, kita m em iliki sebuah class m obil dim an a dapat digun akan un tuk m edefin isikan beberapa obyek m obil. Pada tabel dibawah, m obil A dan m obil B adalah obyek dari class m obil. Class

m em iliki field n om or, plat, warn a, m an ufaktur dan kecepatan yan g diisi den gan n ilai pada obyek m obil A dan m obil B. Mobil juga dapat berakselerasi, berbelok dan m elakukan rem .

• Ketika diin isialisi, setiap obyek m en dapat satu set variabel yan g baru. Bagaim an apun , im p lem en tasi dari m ethod dibagi dian tara objek pada class yan g sam a. Class m en yediakan keun tun gan dari reusability . Program m er peran gkat lun ak dapat m en ggun akan sebuah kelas beberapa kali un tuk m em buat ban yak objek.

(10)

Met odologi PBO

• Terdapat 3 (tiga) m etodologi dasar PBO yaitu : 1. Pem odulan / pen gkapsulan (en capsulation )

2. Pen urun an / pewarisan (In heritan ce) 3. Polim orfism e (Polim orphism )

(11)

Pemodulan/ pengkapsulan

(encapsulat ion)

• Pem odulan adalah m etode un tuk m en ggabun gkan

data den gan fun gsi. Dalam kon sep in i data dan fun gsi digabun g m en jadi satu kesatuan yaitu ke la s .

• Kon sep in i erat kaitan n ya den gan kon sep

pen yem bun yian in form asi (in form ation hidin g).

Co n to h : Co n to h :

Mobil adalah sebuah kelas. Seoran g pen gen dara

m obil tidak harus tahu bagaim ana proses kerja m esin m obiln ya, pem bakaran bahan bakar, proses

pem in dahan tran sm isi gigi, dan seterusn ya. Yan g dia tahu adalah bahwa setir un tuk m en gen dalikan

jalan n ya m obil, pedal gas un tuk m en am bah

kecepatan , pedal rem un tuk m en guran gi kecepatan , dan seterusn ya. Sin gkatn ya dia han ya tahu bahwa m obiln ya berjalan den gan baik.

(12)

Penurunan/ pewarisan (Inherit ance)

• Dari kon sep pen urun an in i suatu kelas bisa diturun kan m en jadi kelas baru yan g m asih m ewarisi sifat-sifat kelas oran gtuan ya.

• H al in i dapat dian alogikan den gan kelas

m an usia. Man usia m erupakan turun an dari m an usia. Man usia m erupakan turun an dari

oran g tuan ya dan sifat-sifat oran g tua diwarisi olehn ya.

• Bisa ditarik kesim pulan bahwa sem ua kelas di dun ia selalu m em iliki hirarki yan g

(13)

Co n to h :

Dari kelas ken daraan berm otor dapat

diturun kan beberapa kelas baru, m isaln ya: sepeda m otor, sedan , pick-up, m in i-bus, dan ken daraan roda ban yak.

Penurunan/ pewarisan (Inherit ance)

(14)

• Con toh 2: kelas sepeda m otor m un gkin m asih dibagi lagi m en jadi dua kelas, yaitu sepeda m otor 2 tak dan 4 tak. Sepeda m otor 2 tak m un gkin m asih dibagi lagi m en urut pabrik pem buatn ya, seperti H on da, Suzuki, Yam aha, dan seterusn ya. Masin g-m asin g pabrik m un gkin m asih m em pun yai beberapa kelas turun an lagi, seperti H on da Astrea Star, H on da Astrea Gran d, dan seterusn ya.

(15)

Keunt ungan Pewarisan

• Subclass m en yediakan state/ behaviour yan g spesifik yan g m em bedakan den gan superclass.

• Mem un gkin kan program m er un tuk

m en ggun akan ulan g source code dari superclass yan g telah ada.

yan g telah ada.

• Program m er dapat m en defin isikan superclass khusus yan g bersifat gen erik, yan g disebut

abstract class, un tuk m en defin isikan class den gan tin gkah laku dan state secara secara um um .

(16)

Polimorfisme (Polimorphism)

• Polim orfism e berarti kelas-kelas yan g berbeda

tetapi berasal dari satu oran g tua dapat m em pun yai m etode yan g sam a tetapi cara pelaksan aan n ya

berbeda-beda. Atau den gan kata lain , suatu fun gsi akan m em iliki perilaku berbeda jika dilewatkan ke kelas yan g berbeda-beda.

kelas yan g berbeda-beda.

Co n to h : kelas un tuk in put soun d system . Sebuah

tape recorder dan CD player m em iliki tom bol PLAY yan g berfun gsi un tuk m em ain kan m usik yan g

dikehen daki. Tape recorder m en gim plem en tasikan tom bol PLAY den gan m em baca isyarat-isyarat yan g terekam di pita m agn etis kaset, sedan gkan CD

player m en ggun akan sin ar laser un tuk m em baca bit-bit digital yan g terekam di perm ukaan CD.

(17)

Bahasa Pemrograman

Bahasa pem rogram an yan g m en dukun g OOP an tara lain : • Visual Foxpro

• J ava

• C++

• Pascal (bahasa pem rogram an ) • Visual Basic.NET • SIMULA • SIMULA • Sm alltalk • Ruby • Python • PH P • C# • Delphi • Eiffel • Perl • Adobe Flash AS 3.0

(18)

Cont oh dalam C++

# in clu d e < io s tre a m .h > co n s t in t b a ta s = 8 0 ; cla s s p e ga w a i / / ke la s in d u k { p riva te : ch a r n a m a [ ba ta s ] ; p u blic: vo id ge td a ta ( ) { co u t < < e n d l < < " In p u t N a m a : "; cin > > n a m a ; } vo id p u td a ta ( ) { co u t < < e n d l < < " N a m a : " < < n a m a ; } { co u t < < e n d l < < " N a m a : " < < n a m a ; } } ; cla s s m a n a je r : p u b lic p e ga w a i / / ke la s tu ru n a n { p riva te : ch a r b a gia n [ ba ta s ] ; d o u b le tu n ja n ga n ; p u b lic: vo id ge td a ta ( )

{ p e ga w a i::ge td a ta ( ) ; co u t < < " In p u t B a gia n : “; cin > > b a gia n ; } vo id p u td a ta ( )

{ p e ga w a i::p u td a ta ( ) ; co u t < < "\ n B a gia n : "< < ba gia n ; } } ;

Referensi

Dokumen terkait

Penelitian ini berkaitan dengan pengaruh dari variabel independen yang meliputi: ukuran perusahaan ( size ), profitabilitas, leverage, Likuiditas terhadap variabel

Mengingat disetiap tahunnya peminat untuk masuk departemen Teknik mesin USU semakin bertambah dan juga ingin menambah fasilitas-fasilitas pendukung, maka diperlukan

[r]

Hal tersebut didasarkan pada Perubahan yang terjadi, dimana Bibit Waluyo yang awalnya adalah Gubernur Jateng di periode sebelumnya ternyata gagal dalam pemilihan kali ini. Hal

Untuk menyusun Rencana Kerja SKPD Kecamatan Cidadap Tahun 2014 yang berfungsi sebagai Dokumen Perencanaan Tahunan, Kecamatan Cidadap terlebih dahulu menyelenggarakan Forum

 Manajer supervisor memberikan instruksi-instruksi yang spesifik kepada para karyawan baru yang direkrut untuk mencapai tingkat produksi yang lebih

Prinsip perkembangan yaitu meliputi, adanya perubahan, perkembangan awal lebih kritis daripada perkembangan selanjutnya, perkembangan merupakan hasil proses kematangan dan

Praktik Pengalaman Lapangan (PPL) 2 telah dilaksanakan praktikan di SMK Masehi PSAK Ambarawa yang terletak di Jalan Pemuda No. Banyak kegiatan yang telah dilakukan