0% menganggap dokumen ini bermanfaat (0 suara)
32 tayangan35 halaman

Mata Kuliah Pemrograman Berorientasi Objek Dasar (3 SKS) Dosen: Nurfitria Rusianah

Mata kuliah ini membahas tentang pemrograman berorientasi objek dasar. Materi utama meliputi pengertian pemrograman terstruktur dan OOP, konsep dasar OOP seperti enkapsulasi, pewarisan, dan polimorfisme, serta perbedaan antara pemrograman terstruktur dan OOP.

Diunggah oleh

755marsinah
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
32 tayangan35 halaman

Mata Kuliah Pemrograman Berorientasi Objek Dasar (3 SKS) Dosen: Nurfitria Rusianah

Mata kuliah ini membahas tentang pemrograman berorientasi objek dasar. Materi utama meliputi pengertian pemrograman terstruktur dan OOP, konsep dasar OOP seperti enkapsulasi, pewarisan, dan polimorfisme, serta perbedaan antara pemrograman terstruktur dan OOP.

Diunggah oleh

755marsinah
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 35

MATA KULIAH

PEMROGRAMAN BERORIENTASI OBJEK DASAR (3 sks)


Dosen : Nurfitria Rusianah
1. Pemrograman Terstruktur
a. Pengertian Pemrograman Terstruktur
Pemrograman Terstruktur adalah suatu proses untuk
mengimplementasikan urutan langkah untuk menyelesaikan suatu
masalah dalam bentuk program.
Pemrograman Terstruktur adalah suatu aktifitas pemrograman dengan
memperhatikan urutan langkah-langkah perintah secara sistematis,
logis , dan tersusun berdasarkan algoritma yang sederhana dan
mudah dipahami.
• Prinsip dari pemrograman terstruktur adalah Jika suatu proses telah
sampai pada suatu titik / langkah tertentu , maka proses selanjutnya
tidak boleh mengeksekusi langkah sebelumnya / kembali lagi ke baris
sebelumnya, kecuali pada langkah – langkah untuk proses berulang
(Loop).
b. Sifat – Sifat Pemrograman Terstruktur

Pemrograman terstruktur mempunyai sifat – sifat sebagai berikut ini :


• Memuat teknik pemecahan masalah yang logis dan sistematis.
• Memuat algoritma yang efisien, efektif dan sederhana.
• Program disusun dengan logika yang mudah dipahami.
• Tidak menggunakan perintah GOTO.
• Biaya pengujian program relatif rendah.
• Memiliki dokumentasi yang baik.
• Biaya perawatan dan dokumentasi yang dibutuhkan relatif rendah
c. Bahasa Pemrograman
Bahasa Pemrograman yang mendukung pemrograman terstruktur
adalah sebagai berikut:
• COBOL
• TURBO PROLOG
Ciri – ciri Bahasa Pemrograman Terstruktur

1. Serangkaian tugas diselesaikan dalam bentuk fungsi atau


prosedur.
2. Cara pandang -> program adalah suatu urutan instruksi.
3. Programer harus me-break down suatu problem menjadi sub
problem yang lebih simple.
4. Fungsi dan prosedur menjadi fokus utama.
5. Fungsi dan prosedur digunakan untuk memanipulasi data.
6. Data bersifat pasif.
2. OOP (Object Oriented
Programming)
a. Pengertian OOP

OOP (Object Oriented Programming) adalah suatu program yang


mengarah pada suatu objek yang bisa disebut juga Paradigma
Pemrograman.
Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-
kelas atau objek-objek.
Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang
lebih, kemudahan mengubah program, dan digunakan luas dalam teknik
piranti lunak skala besar.
Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah
dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan
pendekatan OOP lebih mudah dikembangkan dan dirawat.
Ciri – Ciri Pemrograman Berorientasi
Obyek :
1. Fungsi dan data bukan menjadi dua hal yang terpisah.
2. Fungsi dan data menjadi satu kesatuan yang disebut sebagai
obyekaktif.
3. Cara pandang -> program adalah serangkaian obyek yang
bekerjasama untuk menyelesaikan suatu problem
b. Konsep Dasar OOP
Enkapsulasi (Encapsulation)
Definisi enkapsulasi: Pembungkusan variabel dan
method dalam sebuah obyek yang terlindungi serta
menyediakan interface untuk mengakses variabel
tersebut. Variabel dan method yang dimiliki oleh suatu
objek, bisa ditentukan hak aksesnya. Dalam OOP,
konsep enkapsulasi sebenarnya merupakan perluasan
dari struktur dalam bahasa C.

Contoh: jam tangan. Dalam hal ini, penting sekali untuk


mengetahui waktu, sedangkan cara jam mencatat
waktu dengan baik antara jam bertenaga baterai atau
bertenaga gerak tidaklah penting kita ketahui.
Dengan kata lain enkapsulasi berfungsi untuk 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. Setiap objek
mengakses interface yang menyebutkan bagaimana objek lainnya
dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui
dan tergantung kepada representasi dalam objek tersebut.
Pewarisan (Inheritance)
Pewarisan merupakan pewarisan atribut dan method dari sebuah class ke
class lainnya.
Class yang mewarisi disebut superclass dan Class yang diwarisi disebut
subclass.
Subclass bisa berlaku sebagai superclass bagi class lainya, disebut sebagai
multilevel inheritance.
Contoh : terdapat class sepeda dan sepeda gunung. Sepeda termasuk
superclass.
Sepeda gunung termasuk subclass. Hal ini dikarenakan sepeda gunung
memiliki variabel dan method yang dimiliki oleh sepeda.
Prinsip dasar inheritance 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.
Contoh Pewarisan
Polimorfisme
Polimorfisme adalah kemampuan suatu obyek untuk mempunyai lebih
dari satu bentuk. Polimorfisme tidak bergantung kepada pemanggilan
subrutin. Metode tertentu yang berhubungan dengan sebuah
pengiriman pesan tergantung kepada objek tertentu di mana pesan
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.

Hal ini berlawanan dengan bahasa fungsional yang mencapai


polimorfisme melalui penggunaan fungsi kelas-pertama.
Istilah-Istilah OOP
Objek
Untuk mempermudah pemahaman, maka disini akan dijelaskan melalui
analogi. Pada dasarnya semua benda yang ada di dunia nyata dapat
dianggap sebagai objek.
Misalnya rumah, mobil, sepeda, motor, gelas, komputer, meja, sepatu.
Setiap objek memiliki atribut sebagai status (state) dan tingkah laku
sebagai behavior.
Contoh objek : Motor. Maka atribute (state) nya adalah pedal, roda, jeruji,
speedometer, warna, jumlah roda.
Sedangkan tingkah laku (behavior) nya adalah kecepatan menaik,
kecepatan menurun, dan perpindahan gigi motor.
Dalam OOP, state disimpan pada variabel dan tingkah laku disimpan
pada method.
Dalam bahasa teoretis OOP, Objek berfungsi untuk membungkus data
dan fungsi bersama menjadi satu unit dalam sebuah program
komputer.
Objek merupakan dasar dari modularitas dan struktur dalam sebuah
program komputer berorientasi objek.
Class
Definisi class yaitu template untuk membuat objek. Class merupakan
prototipe atau blue prints yang mendefinisikan variabel-variabel dan
method-method secara umum. Objek merupakan hasil instansiasi dari
suatu class. Proses pembentukan objek dari suatu kelas disebut sebagai
instantiation. Objek disebut juga sebagai instances.
Dalam bahasa teoretis OOP, class merupakan kumpulan atas definisi data
dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu.
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.
Attributes
• Definisi atribut : adalah data yang membedakan antara obyek satu
dengan yang lain.
• Contoh: VolcanoRobot  A volcanic exploration vehicle, mempunyai
atribut sebagai berikut:
• Status  exploring, moving, returning home
• Speed 1, 2, 3 dll in miles per hour)
• Temperature  100, 120, 130 dll (in Fahrenheit degrees)
• Dalam class atribut disebut juga dengan variabel.
• Instance variable: adalah atribut untuk tiap obyek dari class yang sama.
• Tiap obyek mempunyai dan menyimpan nilai atributnya sendiri.
• Jadi tiap obyek dari class yang sama boleh mempunyai nilai yang sama
atau beda.

• Class variable: adalah atribut untuk semua obyek yang dibuat dari class
yang sama.
• Semua obyek mempunyai nilai atribut yang sama.
• Jadi semua obyek dari class yang sama mempunyai hanya satu nilai yang
value nya sama.
Behavior
Behavior/tingkah laku adalah hal-hal yang bisa dilakukan oleh objek dari
suatu class. Behavior dapat digunakan untuk mengubah nilai atribut
suatu objek, menerima informasi dari objek lain, dan mengirim
informasi ke objek lain untuk melakukan suatu tugas (task).
Contoh: class, object, attributtes, dan
behavior
c. Bahasa Pemrograman
Bahasa Pemrograman yang mendukung OOP adalah sebagai berikut :

• Visual Foxpro
• Java
• C++
• Pascal
• VB.Net
• SIMULA
• Smalltalk
• Ruby
• Python
• PHP
• C#
• Delphi
• Eiffel
• Perl
• Adobe Flash AS 0.3
3.Perbedaan dan Persamaan Antara OOP dan
Pemrograman Terstruktur
Perbedaan mendasar antara OOP dan pemrograman terstruktur adalah
dengan menggunakan OOP maka dalam melakukan pemecahan suatu
masalah kita tidak melihat bagaimana cara menyelesaikan suatu
masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat
melakukan pemecahan masalah tersebut. Sedangkan untuk
pemrograman terstruktur, menggunakan prosedur/tata cara yang
teratur untuk mengoperasikan data struktur.
Untuk tata nama, keduanya pun memiliki tatanan yang sama walaupun
memiliki pengertian tersendiri:

OOP menggunakan “method” sedangkan pemrograman terstruktur


menggunakan “function”. Bila di OOP sering didengar mengenai
“objects” maka di pemrograman terstruktur kita mengenalnya dengan ”
modules”. Begitu pula halnya dengan “message” pada OOP dan
“argument” pada pemrograman terstruktur. “attribute” pada OOP juga
memiliki tatanan nama yang sepadan dengan “variabel” pada
pemrograman terstruktur.
• Persamaan kedua pemrograman ini adalah adalah keduanya
termasuk ke dalam pemodelan pemrograman yang digunakan
dewasa ini.
4. Perbedaan software OOP dangan software
terstruktur
Perbedaan software OOP dangan software terstruktur adalah Software
yang dibuat secara OOP besifat Reusable. Prinsip Reusable
pemrograman OOP adalah membuat kode yang ditulis sebisa mungkin
dapat dipergunakan lagi (reusable) supaya dapat dipakai dalam banyak
aplikasi dan situasi supaya tidak perlu lagi mengimplementasi ulang,
walaupun hanya ada perbedaan sedikit saja dari yang sudah dikerjakan
sebelumnya.
Reusability
• Kunci reusability adalah mendaftar (dalam library atau database)
obyek di mana di antaranya mungkin ada yang sesuai dengan user
requirements
• Proses pencarian semacam ini membutuhkan cara yang kuat dan
efisien
5. Beberapa Keuntungan Pemrograman Berorientasi
Objek
a. Maintenance; program lebih mudah dibaca dan dipahami, dan
pemrograman berorientasi obyek mengontrol kerumitan program hanya
dengan mengijinkan rincian yang dibutuhkan untuk programmer.
b. Pengubahan program (berupa penambahan atau penghapusan fitur
tertentu); perubahan yang dilakukan antara lain menyangkut
penambahan dan penghapusan dalam suatu database program
misalnya.
c. Dapat digunakannya obyek-obyek sesering yang diinginkan, kita dapat
menyimpan obyek-obyek yang yang dirancang dengan baik ke dalam
sebuah tolkit rutin yang bermanfaat yang dapat disisipkan kedalam
kode yang baru dengan sedikit perubahan atau tanpa perubahan pada
kode tersebut.
• Jadi, sangat jelas sekali bahwa pemrograman berorientasi objek
sangat cocok sekali digunakan dalam kasus pembuatan software yang
rumit dan kompleks karena memberikan berbagai kemudahan
kepada pemrogram seperti yang telah disebutkan diatas.
• Manfaat yang dirasakan dalam penggunaan pemrograman prosedural
adalah kemampuan kembali menggunakan kode yang sama tanpa
menggunakan kode yang berbeda ataupun mengkopinya kembali.
Dengan menggunakan “goto”, memudahkan programmer melacak
kumpulan data.

• Pemrograman berorientasikan objek dikatakan lebih baik apabila Model


data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih,
kemudahan mengubah program, dan digunakan luas dalam teknik
piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim
bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan
pendekatan sebelumnya, dan pendekatan OOP lebih mudah
dikembangkan dan dirawat.

Anda mungkin juga menyukai